主题
最后登录1970-1-1
回帖0
精华
积分0
威望
RP
金钱 柯币
人气 ℃
注册时间2006-6-19
|
楼主 |
发表于 2006-6-25 22:47:24
|
显示全部楼层
回复: 小推理:谁的帽子?
2,3楼两位答案完全正确!~GOOD~
以下是一种神奇的解法:
我们采用这样的约定,若某事为真,则其值为"1",若某事为假,则其值为"0".对"某事"以代码记号.这样基于已知的事实形成一些等式.然后用加法和乘法得出推论.
乘法---若A与C两者值均为1,则A*C=1
加法---若A或C(或两者)值为1,则A+C=1(注:只有两个数 1与0,若出现比1更大的数,可以当作1)
现在,我们用代码表示四个成员拿走或丢失帽子,如下
----------拿走-------丢失
安迪-------A ----------a
比尔-------B ----------b
查理-------C ----------c
唐恩-------D ----------d
显然,Aa=0 , Bb=0 , Cc=0 ,Dd=0,又因为安迪和比尔没有拿错对方的帽子,Ab=0 , Ba=0
从题中所给资料,有三个方程
Ac*Bd + Ad*Bc = 1-------(1)
Ca + Cb + Cd =1---------(2)
Da + Db + Dc = 1--------(3)
用(2)乘以(3),并消去零的项,即消去Da*Ca及Db*Cb及Dc*Cd,留下的有
Da*Cb + Da*Cd + Db*Ca + Db*Cd + Dc*Ca + Dc*Cb = 1---------(4)
用(4)乘以(1)并消去任何包含a,b,c,d多于一次的项,并消去任何包含形如Cx*Xc的成分(因为被查理拿走帽子的那个人没有拿走查理的帽子),之后留下的成分有
Da*Ac*Cb*Bd + Db*Bc*Ca*Ad = 1
于是,上述项中必有一项是真实的.现在,由于唐恩拿走了某人的帽子,而这个人又拿走了那个拿了安迪帽子的人的帽子,Da*Ac*Cb*Bd无法满足这一条件,此项值为0.因此
Db*Bc*Ca*Ad = 1
这意味着,唐恩拿走了比尔的帽子,比尔拿走了查理的帽子,查理拿走了安迪的帽子,安迪拿走了唐恩的帽子.唐恩是那天最早离开俱乐部的人. |
|