智力题:关于进入房间一次,判断哪个开关控制哪盏灯的问题

昨晚开始看《编程之美》,刚看到序中有一道面试题。据说,早期应聘PM职位的应聘者大多曾碰到这道题目:

房间里有三盏灯,屋外有三个开关,分别控制这三盏灯,只有进入房间,才能看到哪一个电灯是亮的。请问:如何只进入房间一次,就能指明哪个开关控制哪个灯。

自己有个想法,也没看网上的答案:

先将一个开关,拨到开的状态,维持十分钟。然后将该开关,拨到关的状态。然后,将另一个开关的状态拨到开,然后,迅速进入房间。

当前亮着的灯,肯定被外面开关为“开”状态的开关控制。接着用手摸一下,哪个灯泡是热的,该灯泡就是被刚才,状态为“开”的开关控制,剩下的正好配对。

这里,利用了温度做文章~

好吧,还是忍不住到网上搜了一下,有没有其他的解决办法,结果都是钻了温度的空子。好吧,如果加条件:三盏都是冷光灯,有解决方案吗?我没想到!

posted @ 2011-08-13 22:10  程序员天下  阅读(989)  评论(1编辑  收藏  举报