首页 诗词 字典 板报 句子 名言 友答 励志 学校 网站地图
当前位置: 首页 > 教程频道 > JAVA > Java面试 >

阿里巴巴的一路去年的笔试题

2012-11-06 
阿里巴巴的一道去年的笔试题甲、乙头上各顶一个帽子。两人都能看到对方编号,但不知道自己的。已知编号为非负

阿里巴巴的一道去年的笔试题
甲、乙头上各顶一个帽子。两人都能看到对方编号,但不知道自己的。已知编号为非负数,且相差为1.甲开始说,我不知道我是几,乙说我也不知道我是几,甲说我知道我是几了,乙说我也知道我是几了。问甲乙编号分别是多少?

[解决办法]
甲 2
乙 1
[解决办法]

探讨

甲1
乙0

[解决办法]
甲1,乙2
[解决办法]
探讨
5楼正解

[解决办法]
我错了,顶3楼
[解决办法]
3楼正解,感觉这题目难度不大啊
[解决办法]
甲2,乙1
因为非负数,且相差为1。
1:如果甲是0,那么乙肯定知道自己是1了。排除甲是0的情况。
2:如果乙是0,那么同样甲就知道自己是1了。同样排除乙是0的情况。
3:如果甲是1,乙是2,那么甲肯定不知道乙是几(1/3),乙同样不知道甲是几(2/0)。排除甲是1,乙是2的情况。
4:如果甲是2,乙是1,首先甲肯定不知道自己是几(0/2)。乙也不知道自己是几(1/3)。如果甲是0,那么乙肯定知道自己是1了,但是乙说不知道自己是几,所以甲就知道了,因为甲此时只能为2。
[解决办法]
甲 2 乙 1 很简单的题目
[解决办法]
首先甲乙都不可能是0, 不然不会出现前两句话

其二,甲第三句话,说知道自己的, 由此推断 乙的编号必然为1,如果乙大于等于2则甲是不可能知道自己的,因为在这种情况下仍然有两种选择,就和甲第一句话中说不知道自己的原因一样。

其三,乙想到了上面“其二”的逻辑,反推出自己必然就是甲看见的1
[解决办法]
探讨
甲2,乙1
因为非负数,且相差为1。
1:如果甲是0,那么乙肯定知道自己是1了。排除甲是0的情况。
2:如果乙是0,那么同样甲就知道自己是1了。同样排除乙是0的情况。
3:如果甲是1,乙是2,那么甲肯定不知道乙是几(1/3),乙同样不知道甲是几(2/0)。排除甲是1,乙是2的情况。
4:如果甲是2,乙是1,首先甲肯定不知道自己是几(0/2)。乙也不知道自己是几(1/3)。如果甲是0,那么……

[解决办法]
为什么这种题目我第一眼看过去都是完全无头绪
[解决办法]
甲2,乙1 或者 甲3乙2
楼主公布权威答案吧
[解决办法]
甲2,乙1 或者 甲3乙2

[解决办法]
探讨

甲2,乙1
因为非负数,且相差为1。
1:如果甲是0,那么乙肯定知道自己是1了。排除甲是0的情况。
2:如果乙是0,那么同样甲就知道自己是1了。同样排除乙是0的情况。
3:如果甲是1,乙是2,那么甲肯定不知道乙是几(1/3),乙同样不知道甲是几(2/0)。排除甲是1,乙是2的情况。
4:如果甲是2,乙是1,首先甲肯定不知道自己是几(0/2)。乙也不知道自己是几(1/3)。如果甲是0,那……

[解决办法]
1、一开始双方都不知道,所以均为非零。因为如果有一方为0,那就有一人能判断出自己是多少了。
2、甲知道自己是几的情况:已知非0,且与乙的差为1,那甲就能判断出自己是2,因为如果乙大于1的话,甲就判断不出来自己是几,比如乙为2,那甲可以是1或3,这样甲就判断不了。
3、乙知道自己是几要先站在甲的角度想(按步骤2,假设乙自己为2,那么甲就确定不了自己是几了,既然甲能确定是几,那乙左右的两个数有一个是已被否定的,那就是0),这样乙再判断自己是几。

所以,甲是2,乙是1

热点排行