- 精华
- 0
- 帖子
- 9580
- 威望
- 0 点
- 积分
- 10037 点
- 种子
- 0 点
- 注册时间
- 2005-1-5
- 最后登录
- 2011-8-19
|
发表于 2008-1-15 17:56 · 北京
|
显示全部楼层
先设计好两个问题
******问题一:你用Da来表示“是”,是吗?
******问题二:(用手指着另一个精灵)如果我问你“他是那个随机精灵吗”,你会回答“Da”,是吗?
问题一的作用分析:
若Da表示是,而且所问的精灵说真话,则他会回答Da(是)
若Da表示不是,而且所问的精灵说真话,则他会回答Da(不是)
若Da表示是,而且所问的精灵说假话,则他会回答Ja(不是)
若Da表示不是,而且所问的精灵说假话,则他会回答Ja(是)
综上所述:当用问题一问精灵时,不管Da的含义如何,说真话的总回答Da,说假话的总回答Ja。因此,用问题一可辨别真假精灵(随机的精灵下面单独说明)
问题二的作用分析:我所问的精灵用A表示,手指的精灵用B表示,随机精灵用X表示
若B是X,A说真话,Da表示是,则A会用Da(是)回答问中问,所以A会用Da(是)回答问题二
若B是X,A说真话,Da表示不是,则A会用Ja(是)回答问中问,所以A会用Da(不是)回答问题二
若B是X,A说假话,Da表示是,则A会用Ja(不是)回答问中问,所以A会用Da(是)回答问题二
若B是X,A说假话,Da表示不是,则A会用Da(不是)回答问中问,所以A会用Da(不是)回答问题二
若B不是X,A说真话,Da表示是,则A会用Ja(不是)回答问中问,所以A会用Ja(不是)回答问题二
若B不是X,A说真话,Da表示不是,则A会用Da(不是)回答问中问,所以A会用Ja(是)回答问题二
若B不是X,A说假话,Da表示是,则A会用Da(是)回答问中问,所以A会用Ja(不是)回答问题二
若B不是X,A说假话,Da表示不是,则A会用Ja(是)回答问中问,所以A会用Ja(是)回答问题二
综上所述:不管A说真说假,也不管Da表示什么,只要B是X,那么A就会回答Da,只要B不是X,A就回答Ja。因此,可用问题二判断出所指的是不是随机精灵(随机的精灵下面单独说明)
注意:上面两个问题的作用在问到随机的精灵时都是无效的。如果问随机精灵问题一或二,他都有可能回答Da或Ja。因此问题一须在确定被问的精灵不是随机的时候才能发挥作用;而随机精灵面对问题二则同样随便胡扯。下面的应用中我会解决随机精灵这个捣蛋鬼!
******实际应用:首先为三个精灵重新编号为ABC。首先,用问题二指着C问A,那么现在开始讨论!
(一)如果A回答Da,则继续用问题二指着C问B,再分情况讨论
1 若B回答Da,则C一定就是随机精灵,此时在AB中随便用问题一问一个确定其真假,另一个也就知道了
2 若B回答Ja,则C不是随机精灵,且A就是随机精灵,此时在BC中用问题一问一个确定真假,另一个也就知道了
(二)如果A回答Ja,则C一定不是随机精灵,随机精灵在AB中,然后再用问题二指着A问C,即可判断A还是B是随机精灵,然后在不是随机精灵的的两个精灵中挑一个用问题一判断是真是假,就搞定了
注释:上面实际应用中的结论下的很唐突,我来做一下解释与分析(正面论证主要说明这种情况出现的可能性,而反面论证则说明为什么其他情况不能成立,以次确定结论的正确性与唯一性,这样应该十分十分严密了吧)
(一)1 为什么如果A回答Da,B回答Da,就能判断C一定是随机精灵呢?
正面论证:假如AB确实不是随机,即他们一真一假,C是随机精灵,则根据问题二的作用分析可知,AB将回答Da.这样就出现 了上述结论中的情况
反面论证:假如C不是随机精灵,则AB中有一个也不是随机精灵,那么这个不是随机的精灵就一定会回答Ja,也就是AB至少有一个会回答Ja,这与前面矛盾,故C只能是随机精灵
(一)2 为什么如果A回答Da,B回答Ja,就能判断C一定不是随机精灵,A是随机精灵呢?
正面论证:当C不是随机精灵时,AB中一个是随机,另一个不是,随机的在回答问题二时既可能回答Da,也可能回答Ja,而不是随机的精灵则一定会回答Ja。当A是随机精灵且恰好回答Da时,B是非随机精灵一定只能回答Ja。此时出现上述结论中的情况,且回答Da的精灵A一定就是随机的那个,也就是捣蛋的那个!
反面论证:当C是随机精灵时,AB一定都不是随机精灵,那么他们一定都会回答Da,这与上述情况矛盾。故C不可能是随机的
(二)为什么只要A回答Ja就可判断C不是随机精灵呢?
正面论证:当C确实不是随机精灵时,AB中一个随机,一个非随机。A是随机时,他有可能回答Ja;A不是随机时,他一定回答Ja。所以上述结论中的情况可能出现。
反面论证:若C是随机精灵,则AB一定都是非随机精灵,他们一定会回答Da,A不可能回答回答Ja,因此这与前面矛盾,C不可能是随机精灵 |
|