2种方式:
1、把羊带到河对岸 -> 把狼带到河对岸,再把羊带回来 - 把白菜带到河对岸 - 把羊带到河对岸;
2、把羊带到河对岸 -> 把白菜带到河对岸,再把羊带回来 -把狼带到河对岸 -把羊带到河对岸;
问题分析:
抛开算法,把这个题当成是一个简单的逻辑题的话还是挺好解的,过不了多久你就会发现几个关键的问题:
1、要时刻注意农夫的位置,因为农夫不在地时候狼会吃羊,羊会吃菜;
2、第一步只能把羊带走;
3、最后一步只能是把羊从河对岸带过来;
会发现羊其实是问题的关键,只要保证羊和狼和白菜隔离开来,那么就很容易解这个问题。
扩展资料:
过河问题,其实质就是一种状态的改变,就像这个问题说的,农夫狼羊菜都要从河的这边到对岸去,也就对应了两个状态,一个是没过河的状态,一个是过了河的状态。
所以很自然的联想到了用0和1来表示他们的状态,并且每时每刻,农夫狼羊菜的状态都对应一个特定的状态,比如没过河的状态是0000,四个都没有过河,而过河的状态是1111。这样做的好处是将问题抽象成了计算机能够处理的数据。
当然可以选择暴力穷举法,列出所有可能并找出合理的,这是屡试不爽而且行之有效的方法。但这并不是聪明的做法。如果学习数据结构学习得好的同学,会想到用图的V来描述每一种状态,用E来描述状态之间的对应关系,最后进行图的遍历就能找到答案了
一个人要将狼、羊、菜过河一次只能带一样,他不在时,狼要吃羊,羊要吃 ...
1、要时刻注意农夫的位置,因为农夫不在地时候狼会吃羊,羊会吃菜;2、第一步只能把羊带走;3、最后一步只能是把羊从河对岸带过来;会发现羊其实是问题的关键,只要保证羊和狼和白菜隔离开来,那么就很容易解这个问题。
...菜过河一次只能带一样,他不在时,狼要吃羊,羊要吃 ...
1. 需要始终关注农夫的位置,因为当农夫不在时,狼会吃羊,羊会吃菜。2. 第一步只能带羊过河。3. 最后一步只能是将羊从河对岸带回来。你会发现,羊是解题的关键。只要保证羊、狼和白菜之间相互隔离,问题就很容易解决。
...他不在时,狼要吃羊,羊要吃菜。每次只能带一样过河,要怎样过河?_百度...
首先带着羊过河,然后回来带着狼或者菜过河,不要空手回去把羊带上回去,然后把羊放下把狼带到对岸,最后再回去带羊过河 就可以啦
...太小一次只能带一样狼要吃羊羊会吃菜怎样才能安全的把这些
先带羊过去,空船回来;然后带菜过去,带羊回来;然后带狼过去,空船回来;最后带羊过去,这样就狼、羊、菜都运过去了
...小一次只能带一样当他不在时狼要吃羊羊会吃菜怎样乘船
第一步:把羊带过去 第二步:把白菜带过去羊带回来 第三步:把狼带过去,狼不会吃菜 第四步:把羊带过去
一个老头要运三个东西过河,羊.菜.狼。狼吃羊,羊吃菜。怎么才能把它们安...
可一先把羊带过河,狼不吃菜,然后再把狼过河去,跟着把羊带回来,在带菜过去跟狼放在一起,最后再回来把羊带过去。
...船太小,一次只能带一样,并且人不在时,狼要吃羊,羊
先带羊过去;接着把菜带过去,顺便把羊带过来,放下;在把狼带过去,放下;最后把羊带过去
...船太小,一次只能带一样。当他不在时,狼要吃羊,羊会
羊带过去,回来,把狼带过去,把羊带回来,放下羊把菜带过去,再回来,再把羊带过去
...白菜要过河船每次只能带一样过去他不在狼会吃羊羊会吃
第一次,农夫带羊过河,然后农夫回来;第二次农夫带狼过河,然后把羊带回来;第三次农夫把白菜带过河,然后农夫回来;第四次农夫将羊带过河,任务完成。
...了一次只能运一样当他不在时,狼要吃羊、羊会吃菜。怎
先把羊带过去,人回来。把狼带走,到对面把羊接回来。把菜带过去,人回来接羊,搞定收工。满意请采纳,谢谢