码迷,mamicode.com
首页 > 其他好文 > 详细

智力题小结(2)

时间:2015-07-10 22:18:49      阅读:180      评论:0      收藏:0      [点我收藏+]

标签:马中最快的3匹   罪罚抓绿豆   找出一个好的处理器   工人分金条   

1.你在一幢100层大楼下,有21根电线线头标有数字1..21。这些电线一直延伸到大楼顶,楼顶的线头处标有字母A..U。你不知道下面的数字和上面的字母的对应关系。你有一个电池,一个灯泡,和许多很短的电线。如何只上下楼一次就能确定电线线头的对应关系?

答案:在下面把2,3连在一起,把4到6全连在一起,把7到10全连在一起,等等,这样你就把电线分成了6个“等价类”,大小分别为1, 2, 3, 4, 5, 6。然后到楼顶,测出哪根线和其它所有电线都不相连,哪些线和另外一根相连,哪些线和另外两根相连,等等,从而确定出字母A..U各属于哪个等价类。现在,把每个等价类中的第一个字母连在一起,形成一个大小为6的新等价类;再把后5个等价类中的第二个字母连在一起,形成一个大小为5的新等价类;以此类推。回到楼下,把新的等价类区别出来。这样,你就知道了每个数字对应了哪一个原等价类的第几个字母,从而解决问题。

 

2. 某种药方要求非常严格,你每天需要同时服用A、B两种药片各一颗,不能多也不能少。这种药非常贵,你不希望有任何一点的浪费。一天,你打开装药片A的药瓶,倒出一粒药片放在手心;然后打开另一个药瓶,但不小心倒出了两粒药片。现在,你手心上有一颗药片A,两颗药片B,并且你无法区别哪个是A,哪个是B。你如何才能严格遵循药方服用药片,并且不能有任何的浪费?

答案:把手上的三片药各自切成两半,分成两堆摆放。再取出一粒药片A,也把它切成两半,然后在每一堆里加上半片的A。现在,每一堆药片恰好包含两个半片的A和两个半片的B。一天服用其中一堆即可。

 

3. 你在一个飞船上,飞船上的计算机有n个处理器。突然,飞船受到外星激光武器的攻击,一些处理器被损坏了。你知道有超过一半的处理器仍然是好的。你可以向一个处理器询问另一个处理器是好的还是坏的。一个好的处理器总是说真话,一个坏的处理器总是说假话。用n-2次询问找出一个好的处理器。

答案:给处理器从1到n标号。用符号a->b表示向标号为a的处理器询问处理器b是不是好的。首先问1->2,如果1说不是,就把他们俩都去掉(去掉了一个好的和一个坏的,则剩下的处理器中好的仍然过半),然后从3->4开始继续发问。如果1说2是好的,就继续问2->3,3->4,……直到某一次j说j+1是坏的,把j和j+1去掉,然后问j-1 -> j+2;或者从j+2 -> j+3开始发问,如果前面已经没有j-1了(之前已经被去掉过了)。注意到你始终维护着这样一个“链”,前面的每一个处理器都说后面那个是好的。这条链里的所有处理器要么都是好的,要么都是坏的。当这条链越来越长,剩下的处理器越来越少时,总有一个时候这条链超过了剩下的处理器的一半,此时可以肯定这条链里的所有处理器都是好的。或者,越来越多的处理器都被去掉了,链的长度依旧为0,而最后只剩下一个或两个处理器没被问过,那他们一定就是好的了。另外注意到,第一个处理器的好坏从来没被问过,仔细想想你会发现最后一个处理器的好坏也不可能被问到(一旦链长超过剩余处理器的一半,或者最后没被去掉的就只剩这一个了时,你就不问了),因此询问次数不会超过n-2。

 

4. 你让工人为你工作7天,回报是一根金条,这个金条平分成相连的7段,你必须在每天结束的时候给他们一段金条。如果只允许你两次把金条弄断,你如何给你的工人付费?

答案:1.切成1段,2段,和四段.

Day 1:给出1.

2:给出2,还回1.

3:给出1.

4:给出4,还回3.

5:给出1.

6:给出2,还回1.

7:给出1.

5. 村子中有50个人,每人有一条狗。在这50条狗中有病狗(这种病不会传染)。于是人们就要找出病狗。每个人可以观察其他的49条狗,以判断它们是否生病,只有自己的狗不能看。观察后得到的结果不得交流,也不能通知病狗的主人。主人一旦推算出自己家的是病狗就要枪毙自己的狗,而且每个人只有权利枪毙自己的狗,没有权利打死其他人的狗。第一天,第二天都没有枪响。到了第三天传来一阵枪声,问有几条病狗,如何推算得出?(和智力题小结(1)11题雷同)

答案:假设有1条病狗,病狗的主人会看到其他狗都没有病,那么就知道自己的狗有病,所以第一天晚上就会有枪响。因为没有枪响,说明病狗数大于1。假设有2条病狗,病狗的主人会看到有1条病狗,因为第一天没有听到枪响,是病狗数大于1,所以病狗的主人会知道自己的狗是病狗,因而第二天会有枪响。既然第二天也每有枪响,说明病狗数大于2。由此推理,如果第三天枪响,则有3条病狗。

 

6.一个圆盘被涂上了黑白二色,两种颜色各占一个半圆。圆盘以一个未知的速度、按一个未知的方向旋转。你有一种特殊的相机可以让你即时观察到圆上的一个点的颜色。你需要多少个相机才能确定圆盘旋转的方向?

答案:你可以把两个相机放在圆盘上相近的两点,然后观察哪个点先变色。事实上,只需要一个相机就够了。控制相机绕圆盘中心顺时针移动,观察颜色多久变一次;然后让相机以相同的速度逆时针绕着圆盘中心移动,再次观察变色的频率。可以断定,变色频率较慢的那一次,相机的转动方向是和圆盘相同的。

 

7. 有25匹马,速度都不同,但每匹马的速度都是定值。现在只有5条赛道,无法计时,即每赛一场最多只能知道5匹马的相对快慢。问最少赛几场可以找出25匹马中速度最快的前3名?(百度2008年面试题)

 

答案:每匹马都至少要有一次参赛的机会,所以25匹马分成5组,一开始的这5场比赛是免不了的。接下来要找冠军也很容易,每一组的冠军在一起赛一场就行了(第6场)。最后就是要找第2和第3名。我们按照第6场比赛中得到的名次依次把它们在前5场比赛中所在的组命名为A、B、C、D、E。即:A组的冠军是第6场的第1名,B组的冠军是第6场的第2名……每一组的5匹马按照他们已经赛出的成绩从快到慢编号:

A组:1,23,4,5

B组:12,3,4,5

C组:1,2,3,4,5

D组:1,2,3,4,5

E组:1,2,3,4,5

从现在所得到的信息,我们可以知道哪些马已经被排除在3名以外。只要已经能确定有3匹或3匹以上的马比这匹马快,那么它就已经被淘汰了。可以看到,只有上表中粗体蓝色的那5匹马才有可能为2、3名的。即:A组的2、3名;B组的1、2名,C组的第1名。取这5匹马进行第7场比赛,第7场比赛的前两名就是25匹马中的2、3名。故一共最少要赛7场。

 

这道题有一些变体,比如64匹马找前4名。方法是一样的,在得出第1名以后寻找后3名的候选竞争者就可以了。

 

8. 5个囚犯,分别按1-5号在装有100颗绿豆的麻袋抓绿豆,规定每人至少抓一颗,而抓得最多和最少的人将被处死,而且,他们之间不能交流,但在抓的时候,可以摸出剩下的豆子数。问他们中谁的存活机率最大??

提示:

1,他们都是很聪明的人

2,他们的原则是先求保命,再去多杀人

3,100颗不必都分完

4,若有重复的情况,则也算最大或最小,一并处死

答案:假设第1个囚犯取了x颗,第2个囚犯取了y颗,则第3个囚犯知道第1、第2个总共拿了(x+y)颗,那么他为了保命,一定选择最接近(x+y)/2的整数颗,同理,第4个囚犯选择的同样是最接近(x+y+(x+y)/2)3=(x+y)/2的整数颗,以此类推,第5个囚犯也将选择到最接近(x+y)/2的整数颗。 当然,因为所有囚犯足够聪明,第1,第2个囚犯也应该明白这个道理,那么,如果x不等于y,那么第1、第2个囚犯必死,其他3个存活,由于规则是先保命,不能保也得多杀人,那么第2个囚犯选择为x颗,这样全部人都选择x颗,全死。

另外,讨论x是否会大于100/5=20颗?

显然,x>20的话,第一个囚犯必死,而且一定有人存活,根据上述囚犯心理分析,因此不会出现这种情况。

综合以上结果,所有人必死。

 

9. 为什么下水道的盖子是圆的?

答案:之所以是圆,是因为圆形每条直径长度都相等,不会掉到下水道去。其它形状存在至少两条不等的重垂线。有掉下去的可能。

 

10. 一普查员问一女人,“你有多少个孩子,他们多少岁?”

女人回答:“我有三个孩子,他们的岁数相乘是36,岁数相加就等于旁边屋的门牌号码。“普查员立刻走到旁边屋,看了一看,回来说:“我还需要多少资料。”女人回答:“我现在很忙,我最大的孩子正在楼上睡觉。”普查员说:”谢谢,我己知道了。”

问题:那三个孩子的岁数是多少。

答案:36 = 1 × 2 × 2 × 3 ×3

所有的可能为

1,1,36;sum = 38

1,2,18;sum = 21

1,3,12;sum = 16

1,4,9;sum = 14

1,6,6;sum = 13

2,2,9;sum = 13

2,3,6;sum = 11

3,3,4;sum = 10

由于普查员知道了年龄和之后还是不能确定每个孩子的年龄,所以可能性为

1,6,6;sum = 13

2,2,9;sum = 13

由于最大(暗含只有一个最大)的孩子在睡觉,所以只可能是

2,2,9;sum = 13

版权声明:本文为博主原创文章,未经博主允许不得转载。

智力题小结(2)

标签:马中最快的3匹   罪罚抓绿豆   找出一个好的处理器   工人分金条   

原文地址:http://blog.csdn.net/day__day__up/article/details/46834781

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!