作者yauhh (姚呵呵)
看板logic
标题Re: [讨论] IBM面试问题
时间Sat Apr 26 17:28:48 2008
※ 引述《josa9616 (josa)》之铭言:
: 我的问题是 大家都看过别人的狗/背 但我不知道总共有几
: 个 那我又要怎麽知道 我可能是 我看的的 不能告诉别
: 人 别人也不能告诉我 他看到几只 又不知道 共几只
: 那 怎麽知道 自己的呀
: 有人回文说 几个人看到四只 几个人看到三只的 方式推
: 但有着明不得交流呀 我又怎麽知道 其他人 看到几只
因为递回认知:
Fact 1: 当你放眼所见全都是没病的狗,但全村的病情并未解除,
你马上就会杀你的狗.
Fact 2: 你只看见一只狗有病,就会先看看狗主人是否按照Fact 1执行该做的事情,
他没做,就表示他也看到别人的狗有病,而依你所知推测,另一只病狗是你的,
於是,他会宰他的狗,你也会宰你的狗,如果他的想法与你相同.
...
Fact n: 按照Fact 1到Fact n-1,应该有一天会有一些人杀他们的狗;
但是,在过去n-1天你所看见的n-1只狗都没事,
可见还要多一只该死的狗,应该是你的狗,
所以第 n 天,每一位见到n-1只病狗的人都会宰了自己的狗.
newtonapple所提的条件非常重要,在所有的Fact情况都要一个共同的规则:
若不将狗全数宰净,病情无法解除.
--
※ 发信站: 批踢踢实业坊(ptt.cc)
◆ From: 218.160.213.13
※ 编辑: yauhh 来自: 218.160.213.13 (04/26 17:31)
1F:推 luciferii:不用最後一个条件。要杀狗只会在同一天,不会分天杀。 04/26 19:46
2F:推 luciferii:如果你们还搞不懂,可以看以前「机器人自爆」的讨论串 04/26 19:50
3F:→ luciferii:解释得非常白话 04/26 19:50
4F:→ yauhh:要有共同条件,才会驱动他们去杀狗 04/26 19:51
5F:推 luciferii:题目有写 04/26 22:30
6F:→ luciferii:主人一旦推算出自己家的是病狗就要枪毙自己的狗 04/26 22:30
7F:→ luciferii:不用去假设什麽主人爱狗不肯杀之类的题外假设 04/26 22:30
8F:→ luciferii:或者是有人不肯面对现实不肯去推算的问题 04/26 22:35
9F:→ luciferii:基本上最後有人推算出来了(一阵枪响),自然是代表 04/26 22:36
10F:→ luciferii:没有人故意不去看别人的狗。 04/26 22:36
11F:推 MicroB:有人推算出了不是只代表推算出的人自以为没有人不去看狗吗? 04/27 03:07
12F:→ MicroB:如果有人真的不去看狗 是推算出的人自己算错了 这种题目一 04/27 03:08
13F:→ MicroB:定要让所有人的相法一致且都尽力推算 所以总是加一句:所有 04/27 03:09
14F:→ MicroB:人都很聪明 只是从结果来说怎样才算聪明就难说了 XD 04/27 03:10
15F:→ yauhh:不是啦,全域条件必须存在是因为,如果杀不杀狗都无所谓, 04/28 00:25
16F:→ yauhh:只是自然的想法而已,不必认为我延伸假设了什麽 04/28 00:26