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

阿里巴巴的一道去年的笔试题,该如何处理

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

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


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

所以,甲是2,乙是1

热点排行