世界最难的逻辑推理问题!!!知道答案的请进!

题目是这样的:有甲、乙、丙三个精灵,其中一个只说真话,另外一个只说假话。还有一个随机地决定何时说真话,何时说假话。你可以向这三个精灵发问三条是非题,而你的任务是从他们的答案找出谁说真话,谁说假话,谁是随机答话。这个难题困难的地方是这些精灵会以“Da”或“Ja”回答,但你并不知道它们的意思,只知道其中一个字代表“对”,另外一个字代表“错”。你应该问那三条问题呢?

需要说明的,每次问问题只能问一个精灵,而不能同时问3个
那个随即决定说真话的精灵,上次回答和下次的回答,真话假话概率还是一样的,不会因为上次说了真话,下次就说假话

我想了很久,我是这样问的:
设三个精灵分别为:甲 ,乙, 丙.
先确定那个偶尔说真话偶尔说假话的人:

问甲:你觉得乙会说真话吗? (第一问)
再问甲:你觉得丙会说真话吗? (第二问)

乙 丙 中如果有一个精灵是偶尔说真话偶尔说假话的.那么甲是无法回答的,回答YES不对 回答NO也不对.

1:不论甲精灵回答YES还是NO, 如果甲不回答第一问,说明乙就是那个精灵.
2: 如果甲精灵不回答第二问,说明丙就是那个精灵.
3:如果甲精灵两个问题都回答了,说明甲自己就是那个偶尔说真话偶尔说假话的精灵.

再确定谁是真话的:

问剩下的两个精灵中任何一个都可以:
对方会认为你说的是真话吗? (第三问)

如果他回答YES.说明他是说假话的精灵.如果他回答NO,说明他是说真话的精灵. 当然剩下的一个,就知道了!

请问这样回答对吗? 正确答案又是什么!!!!请高手指点!!!谢了!

你的答案已经接近了 不过问的问题有点问题哦
首先你没有考虑精灵回答的是“Da”或“Ja”不是真或假 你也不知道各自的意思 由于这点你的第三问就不成立
你这样问:
问甲,你认为乙会认为你说的话是真的吗?
再问你认为丙会认为你说的话是真的吗?
这样只要乙或丙中有一个甲答不出来那就是乙或丙是 随机的那个 都答不出来那甲自己有问题
也是分3种情况:
1.甲答不上来对乙的认为问题 答得上来对丙的认为问题 这样乙就是那个可能说真话也可能说假话的精灵 此时你再问甲你觉得丙会说真话吗? 那他回答的精灵语的意义“Da”或“Ja”只能是假的意思 然后跟第二问(对丙的想法的问题)的回答相同的话 那甲家是说真话的 丙是说假话的 不同就是甲说甲话 丙说真话
2.甲答不上来对丙的认为问题 跟1其实是一样的推理方法我就不多说了 你应该想的出来
3.甲回答不出来两个问题 甲自己就有问题了 所以你再问乙或者丙:你觉得对方会说真话吗?回答的精灵语肯定是假的意思 再问其中一个:对方会认为你说的是真话吗? 回答相同 那你最后一问问的那个是说真话的 回答不同问的就是说假话的
你明白没有 没有的话说声
温馨提示:答案为网友推荐,仅供参考
第1个回答  2012-04-08
方法一:指着乙,丙中任何一个人问甲:我下一个问题是问他吗?有2种可能A:回答da或ja.B:不能马上回答。1:出现A则表示甲是随机的那一个。因为不管你说的是真还是假,他都可以随便回答,而说真话和说假话的人因为不能判断你话的真假,不可能马上回答出来。再问乙:da是表示对吗?又有2种可能,A1;回答da,则乙说真话,丙说假话。A2:回答ja,则乙假丙真:2:出现B则表示甲真或甲假。再问乙:我下一个问题是问3个问题最终能区别你们吗?(这时甲才开始回答第一个问题,但已经不重要了,因为他回答得太晚了,你已经知道他不可能是随机的精灵了)对于乙,同理有2种可能,B1:能回答,那乙随机,再用上面同样的方法区别甲和丙谁真谁假。B2:不能回答,等待所有问题问完决定答案,则丙随机,同理判断出甲和乙谁真谁假。【利用精灵回答时间的先后来判断不知道符合题意吗?】方法二:对甲说如果你是随机的精灵回答问题1,如果不是回答问题2, 问题1:5a=88, 问题2:10000=1+2+2+3-2+8-1+……一直念下去,故意拖时间,如果你还没念完,他就回答了,肯定是回答的问题1,他就是随机的,因为不管对错都没关系,如果他等你念完再回答,肯定回答的是问题2,他就是或真或假,如果是随机的,问乙da表示的是对吗,同方法一,可以问出结果,如果他不是随机的,再用类似的办法问乙,这次肯定能确定谁是随机的,再问不是随机的任意一个等待你问下一个精灵来决定答案同理有2种可能,B1:能回答,那乙随机,再用上面同样的方法区别甲示的是对吗,得出结果。
第2个回答  2008-08-18
不要想得太复杂嘛,上世纪那个出这道题的人能难倒这么多人是因为现在的人们的创新能力太弱了而已。
方法有很多,比如问他们同一个问题n次,例如:你会说真话吗?,或你是猪吗?或你是人嘛?。。。。。。
n次后,当中c精灵在连续说ja(或da)后,又说了da(或ja)的,就是那个随意决定说真话或假话的精灵。
注明:不要以为N次很多,跟抛硬币一样,要出现两个答案,只需要3,4次就可以了。
排除后,再随便问剩下的两个中的一个,例如:A精灵会说谎吗?B精灵答:JA,由此可确定JA是代表YES,又问:你刚才回答了我吗?倘若答:DA,就证明B说假话。
第3个回答  2008-08-11
呵呵 你的思路很有意思 但是不对,
因为你假设了一个让精灵无法回答的问题,这是题意所不允许的

正确答案吗,去我的空间里找吧,我那里有完整的答案和解释,希望你能看懂,不懂可以留言讨论啊,呵呵
第4个回答  2008-08-10
你的推理太牵强 问题处于 一个人一会假一会真
但你要知道 那个一会假一会真的 大家都不知道 甲乙丙都不知道~
另外你的不会回答什么意思?记住啊他智慧说da和ja不会不说
另外你不知道 da 和ja 的意思
另外根据不知道 da 和ja的正确意思 那么举例子的必要也就失去了

难了点 慢慢考虑。。。
思考1个小时了 没结果。。。
或许题有问题?对于这个问题
我的考虑既然不知道 da 和ja的含义 那么就难以限制这个各自的数量
难道真有绝妙的问发 是能得到3个相同的答案 即全对全错?不可能
因为有随机那么有失败了,
那得到不同的答案呢?还是如此 还是摸不到边际 到底怎么搞呢?
而且因为不知道 da ja的意思 所以假设也没有一丁点的作用
另外你的任何提问都能有人去回答,另外有了随机问题又加一步的难了,不知道该如何去判断
2个未知因素在一起 真的能解决 我的脑袋混乱ing
甲乙丙只是 代号没有实际的意思 而提问呢无论提问什么 3个人都能去回答而且回答都是 不知道的答案 而且回答的问题中 有1个变数,他可能错误也可能正确,但提问的问题要如何设置?不能根据回答的da和ja来确定范围,而且da和ja又不知道是正确还是错误即使能解决 那要如何解决啊 迷糊
光是确定 随机的和真假的关系就很郁闷了
回答不上来0-0 这个我是没考虑到
一个假假真真的人 问1个人会知道是真假?(倘若甲就是那个假假真真的
即使已丙中有一个是假假真真的 那么甲要如何回答 da还是ja不可能不会做声
第5个回答  2008-08-12
太难了
相似回答