题目:五个商人与五个随从坐船过河,开始10人在岸的同一边,一只小船至多能容纳三人,由他们自己划行,随从在河的任意一岸以及船上,只要随从人数比商人多,就会杀人越货。但如何渡河由商人决定,问怎么安全过河。
看如下坐标图
x表示商人数量,y表示随从数量。当岸上的人数符合蓝色坐标点时,则安全。每一次往返符合条件的同时都要使得岸上(此岸)的人数在蓝点上。
由此可得到如下路径(5,5)--->(4,4)-->(5,4)-->(5,1)-->(5,2)-->(2,2)-->(3,3)-->(0,3)-->(0,4)-->(0,2)-->(0,0)
路径解释如下
(5,5)--->(4,4):一名商人一名随从上船。 彼岸:(0,0)船上:(1,1)此岸:(4,4)
(4,4)-->(5,4):随从上岸,商人划船返回。 彼岸:(0,1)此岸:(5,4)
(5,4)-->(5,1):三名随从上船。彼岸:(0,1)船上:(0,3)此岸:(5,1)
(5,1)-->(5,2):两名随从上岸,一名随从划船返回。彼岸:(0,3)此岸:(5,2)
(5,2)-->(2,2):三名商人上船。彼岸:(0,3)船上:(3,0)此岸:(2,2)
(2,2)-->(3,3):两名商人上岸,一名随从一名商人划船返回。彼岸:(2,2)此岸:(3,3)
(3,3)-->(0,3):三名商人上船。彼岸:(2,2)船上:(3,0)此岸:(0,3)
(0,3)-->(0,4):三名商人上岸。一名随从划船返回。彼岸:(5,1)此岸:(0,4)
(0,4)-->(0,2)-->(0,0):四名随从依次划船上岸。
方案不止一种,在此抛砖引玉,感兴趣的可以自己来画条路径。
思路概括:首先先让对岸有3个随从(此处可用多种方案),然后3个商人一起坐船过河,让一个商人一个随从过来。然后再让3个商人过去,这样对岸有5个商人了2个随从了,商人全部安全到达对岸。接下来就很好理解了,不在说明(此处也可产生多种方案)。