题目
有一个农夫带一匹狼、一只羊和一棵白菜过河(从河的北岸到南岸)。如果没有农夫看管,则狼要吃羊,羊要吃白菜。但是船很小,只够农夫带一样东西过河。用0和1表示狼、羊、白菜分别运到南岸的状态,0表示不在南岸,1表示在南岸(如:100表示只有狼运到南岸)。初始时,南岸状态为000,表示狼、羊、白菜都没运到南岸,最终状态为111,表示狼、羊、白菜都运到了南岸。用状态空间为农夫找出过河方法,以下狼、羊、白菜在南岸出现的序列可能是()A. 000-010-100-101-111B. 000-010-001-101-111C. 000-100-110-111D. 000-001-011-111
有一个农夫带一匹狼、一只羊和一棵白菜过河(从河的北岸到南岸)。如果没有农夫看管,则狼要吃羊,羊要吃白菜。但是船很小,只够农夫带一样东西过河。用0和1表示狼、羊、白菜分别运到南岸的状态,0表示不在南岸,1表示在南岸(如:100表示只有狼运到南岸)。初始时,南岸状态为000,表示狼、羊、白菜都没运到南岸,最终状态为111,表示狼、羊、白菜都运到了南岸。用状态空间为农夫找出过河方法,以下狼、羊、白菜在南岸出现的序列可能是()
A. 000-010-100-101-111
B. 000-010-001-101-111
C. 000-100-110-111
D. 000-001-011-111
题目解答
答案
B. 000-010-001-101-111
解析
本题考查状态空间搜索以及逻辑推理能力,解题的关键在于根据农夫、狼、羊、白菜之间的关系,分析每次过河后南岸状态的合理性,同时要保证在农夫不在时狼不吃羊、羊不吃白菜。
下面对每个选项进行详细分析:
- A选项:000 - 010 - 100 - 101 - 111
- 初始状态为000,即狼、羊、白菜都在北岸。
- 第一步到010,说明农夫带羊到南岸,此时北岸剩下狼和白菜,因为狼不吃白菜,此状态合理。
- 第二步到100,若要从010变为100,意味着农夫要把羊带回北岸,再带狼到南岸。但当农夫带狼到南岸后,农夫在南岸,北岸有羊和白菜,羊会吃白菜,此状态不合理,所以A选项错误。
- B选项:000 - 010 - 001 - 101 - 111
- 初始状态000,农夫带羊到南岸,状态变为010,北岸剩下狼和白菜,狼不吃白菜,状态合理。
- 第二步到001,农夫独自返回北岸,带白菜到南岸,状态变为001,此时南岸有羊和白菜,农夫在南岸,羊不会吃白菜,状态合理。
- 第三步到101,农夫带羊返回北岸,再带狼到南岸,状态变为101,此时南岸有狼和白菜,狼不吃白菜,状态合理。
- 第四步到111,农夫独自返回北岸,带羊到南岸,状态变为111,所有东西都到南岸,状态合理,所以B选项正确。
- C选项:000 - 100 - 110 - 111
- 初始状态000,若第一步到100,即农夫带狼到南岸,此时北岸剩下羊和白菜,羊会吃白菜,此状态不合理,所以C选项错误。
- D选项:000 - 001 - 011 - 111
- 初始状态000,若第一步到001,即农夫带白菜到南岸,此时北岸剩下狼和羊,狼会吃羊,此状态不合理,所以D选项错误。