2007/04/03

以直線平分一個湖的周長與面積

問:

如何以一條直線,切割一個封閉曲線,使其周長與面積皆被平分?
(如何找到一條直線,同時平分一個湖的周長與面積?)

為使問題單純,封閉的曲線不會交叉,中間沒有洞(湖中沒有島)。


參考解答:(一種建構式的做法)

1. 封閉曲線上,決定某一個點A0,當做起點,並決定初始的step size(例如:周長的1/100)以及方向(例如順時針)。
2. 對每一點Ai,可以在封閉曲線上找到『對岸』的唯一的一點Bi,使周長平分。
3. 直線連接兩點。檢查封閉曲線是否被平分為左右兩邊相等,若相等,則結束。
(在這裏,『左』或者『右』是站在Ai向Bi的方向來看的)
4. 如果某一邊的面積較大(例如左邊),則在封閉曲線周邊,依原訂的方向(例如順時針)移動一個step(例如,百分之一的周長),並且回到步驟2。 如果換成另一邊面積較大(例如,上一次是左邊,但這一次變成右邊),則縮小step size(例如,原先step size的十分之一)並往反方向尋找。如此每一次碰到換邊面積較大時,就縮小step size並往反方向尋找,則最終必可找到平分周長與面積的直線。

即使每一步都不能平分湖面,也不會總是左邊面積比較大,因為只要走到起點的對岸(也就是由起始點A0走到起始點的周長對分點B0的時候),就成了右邊面積比較大。由於左右兩邊的面積差,是一個連續函數,而且不是恆為正或者恆為負,因此,可以確定這一條直線的存在。

同樣的題目可以變形為:兩個湖(不相連),找到一條直線,同時可以分割兩個湖為等面積的兩塊。

沒有留言: