一些有趣的题
面试时会遇到的智力问题
烧绳子问题
给定两条绳子\(R1\)和\(R2\),每条绳子烧完正好一个小时,并且绳子不均匀。问怎么测量15分钟。
点燃\(R1\)两端,点燃\(R2\)一端,\(R1\)烧完,开始烧\(R2\)另外一端,并且现在开始计时。
最重球问题
有 9 个球,其中 8 个球质量相同,有 1 个球⽐较重。要求⽤ 2 次天平,找出⽐较重的那个球。
先均分为三组,测量其中A、B两组,天平平衡则测量C组,不平衡则测量较重的那一个。第二轮测量的思路于第一轮相同。
分苹果问题
桌上有 100 个苹果,你和另⼀个⼈⼀起拿,⼀⼈⼀次,每次拿的数量⼤于等于 1 ⼩于等于 5,问:如何拿能保证最后⼀个苹果由你来拿?
本质就是\(n\)为100,\(m\)为5的巴什博弈。100 = (5+1)*k+4。作为先手第一次只需要拿走4个,那么剩下的所有轮次,后手选择了\(x\)个,则先手选择\(6-x\)个即可。
老虎吃羊问题
有1只羊,100只老虎,老虎吃了羊之后会变成羊。老虎优先保证自己的性命。
每一个状态的后继状态只有一个,从必吃态转移,属于比较简单的博弈问题了。最后一个具有普适性的结论,老虎数为偶数时不吃。
分金条问题
问题 : 你让⼯⼈为你⼯作 7 天,回报是⼀根⾦条,这个⾦条平分成相连的7 段,你必须在每天结束的时候给他们⼀段⾦条。如果只允许你两次把金条弄断,你如何给你的⼯⼈付费?
切两⼑,分为 1/7、2/7、4/7 三段。
第⼀天给 1/7;
第⼆天给 2/7,要回 1/7;
第三天给 1/7 ;
第四天给 4/7 要回 1/7 + 2/7;
第五天给 1/7;
第六天给 2/7,要回 1/7;
第七天给 1/7
毒药问题
问题 :有 1000 个⼀模⼀样的瓶⼦,其中有 999 瓶是普通的⽔,有 1 瓶是
毒药。任何喝下毒药的⽣命都会在⼀星期之后死亡。现在你只有 10 只⼩⽩
⿏和 1 个星期的时间,如何检验出哪个瓶⼦有毒药?
第\(i\)只老鼠喝点所有编号的二进制第\(i\)为1的药水
⼀星期后,如果第 1 只⽼⿏死了,则:毒药瓶⼦的⼆进制编号中,右起第⼀位是 1 ;如果第 1 只⽼⿏没死,则: 毒药瓶⼦的⼆进制编号中,右起第1 位是 0 ;
⋯⋯
以此类推,
每只⽼⿏的死活都能确定出 10 位⼆进制数的其中⼀位,由此便可知道毒药
瓶⼦的⼆进制编号了,进⽽转换为⼗进制,即可找出毒药瓶⼦。