个人觉得很难的逻辑思维题

来源:百度知道 编辑:UC知道 时间:2024/06/30 11:19:52
有甲、乙、丙三个精灵,其中一个只说真话,另外一个只说假话。还有一个随机地决定何时说真话,何时说假话。你可以向这三个精灵发问三条是非题,而你的任务是从他们的答案找出谁说真话,谁说假话,谁是随机答话。这个难题困难的地方是这些精灵会以“Da”或“Ja”回答,但你并不知道它们的意思,只知道其中一个字代表“对”,另外一个字代表“错”。你应该问那三条问题呢?
要自己做出,随意拉动他人东西的答案我是不要的。多方面考虑,我要有你们个人自己的见解

1问:你们是说真话的精灵吗?
答案有如下可能:两个精灵回答Da一个回答Ja或两个答Ja,一个答Da.则回答与另外两个不一样的那个精录一定是“随机决定何时说真话”的精灵。答案除以上两种可能外,还有一种可能是三个回答都是一样的,如果都是Da刚Da代表“是”,如果都是Ja则Ja代表“是”。如果回答不是相同的,则多的那个代表“是”。
通过第一步,如果直接找出了随机决定何时说真话的精灵,则只剩两个精灵。且此时,已经知道哪个代表是,哪个代表不是。然后问剩下的两个精灵,你们是随机决定何时说真话的精灵吗?说假话的精灵会回答“是”。则只要两个问题,就可以判断出结果了。
如果没能直接找出随机说真话的精灵,即三个精灵的回答都是一样的。则问第二个问题。

2问:你们是随机决定何时说真的话的精灵吗?
此时已经通过第一问知道哪个代表“是”。如果有两个回答“是”,则回答“不是”的那个必是说真话的精灵。如果两个回答不是,则回答“是”的那个必是说假话的。

3问要分两种情况。如果找出的是说真话的精灵,则随便指着一个问他,这个是不是说假话的精灵,就可以判断出结果;如果找出的是说假话的精灵,就随便指一个精灵,问他这个是不是说真话的精灵,然后作出相反的判断就可以得到结果了。

或者这样推算

1,问A:"你们中的随机者会回答我"DA",对吗?"
如果A是说真话的,因为不知道随机者会说DA或JA,他将不能回答而愣在那里.无论回答DA或JA,都可能会导致他说谎.
如果A是说谎话的,同样的道理,如果回答的话,可能导致说真话.这与他的身份不符.
如果A是随机者,他将任意回答DA或JA.
所以,A如果沉默不语,那么A是说真话的或是说谎话的;A回答,他是随机者.

2,如果A不是随机者,则继续问他:DA表示”对”的意思吗?
如果DA真是”对”的意思,则A是说真话有将回答”DA”,A是说谎话将回答”JA”
如果DA是”不对”的意思,则A是说真话的将回答你”DA”,A是说谎话的将回答"JA"
因此A回答&