在一条河边,有三对狮子,分别是3只大狮子和3只小狮子,而且这3对狮子是3对母子。现在他们要过河,但只有1只船可以用,一只船一次最多可以坐2只狮子。3只大狮子都会划船,3只小狮子中,只有1只会划船。如果任何一只小狮子的母亲不在他身边,其他大狮子就会吃掉小狮子。
请问,怎样才能保证任何一只狮子都不被吃掉,而3对狮子全部过河???
我的答案:
根据题可分析出小狮子必须和其母亲在一起,也就是说要是过河坐在船上的只有几种情况,要么2支小狮子,要么一对狮子母子,要么2个大狮子。
解决方法就是要把大狮子先都弄过去,把大狮子和小狮子分开,在由会划船的小狮子载那两个小狮子过河。。
基本过程如下:
设Aa,Bb,Cc
1,ab先过河,a回来。
此时对岸b,这岸Aa,B,Cc
2,ac过河,a回来。
此时对岸bc,这岸Aa,B,C
3,BC过河,
此时对岸Bb,Cc 这岸Aa (现在需要把这岸的A运过去)
Bb回来, 此时对岸Cc,这岸Aa,Bb
4,Aa过河, 此时对岸Aa,Cc
Cc回来,此时对岸Aa,这岸Bb,Cc
5,BC