1、多人排成一个队列,我们认为从低到高是正确的序列,但是总有部分人不遵守秩序。
如果说,前面的人比后面的人高(两人身高一样认为是合适的),那么我们就认为这两个人是一对“捣乱分子”,比如说,现在存在一个序列:
176, 178, 180, 170, 171
这些捣乱分子对为:<176, 170>, <176, 171>, <178, 170>, <178, 171>, <180, 170>, <180, 171>,
那么,现在给出一个整型序列,请找出这些捣乱分子对的个数(仅给出捣乱分子对的数目即可,不用具体的对)。
【答案】思路
求逆序对。
2、有一堆1万个石头和1万个木头,对于每个石头都有1个木头和它重量一样,把配对的石头和木头找出来。
【答案】思路
(1)可以对木头和石头分别排序,然后一一对应配对;
(2)选一个石头,在木头中寻找配对,依次类推;
(3)结合以上两个办法,对木头排序,然后取一个石头,匹配对应木头(木头已排序,不需要搜索直接配对);
排序方法如下:
把木头扔到水里,根据吃水深度排序;把石头从等高的足够光滑的斜坡滑下,根据水平滑动距离排序,然后二者一一对应。
3、有1000桶酒,其中一桶有毒。而一旦吃了,毒性会在一周内发生。现在我们用小老鼠做实验,要在1周内找出那桶毒酒,问最少需要多少老鼠?
【答案】思路
10只老鼠按顺序排好每桶酒按照编号转换成二进制,给相应位置上是1的老鼠喝。最后按死掉的老鼠是哪几只,然后排成二进制,再转成十进制就是第几桶酒。
比如:
第70桶酒,70转换成二进制就是0001000110,那么就给第四、八、九只老鼠喝。如果最后死掉第三、七、八只老鼠,那么就是0010001100,转换成十进制就是140,即140桶酒有毒。
4、你有一桶果冻,其中有黄色、绿色、红色三种,闭上眼睛抓取同种颜色的两个。抓取多少个就可以确定你肯定有两个同一颜色的果冻?
【答案】思路
4个,抽屉原理。
5、烧一根不均匀的绳,从头烧到尾总共需要1个小时。
现在有若干条材质相同的绳子,问如何用烧绳的方法来计时一个小时十五分钟呢?
【答案】思路
a绳从两头烧,同时b绳从一头烧,当a绳烧尽时,灭掉b绳,同时c绳从一头烧,在c绳烧尽时,b绳从两头烧,结束时即为1小时15分钟。
6、如果你有无穷多的水,一个3公升的提捅,一个5公升的提捅,两只提捅形状上下都不均匀,问你如何才能准确称出4公升的水?
【答案】思路
(1)用5升桶满桶,倒入3升桶中,倒满后大桶里剩2升;
(2)把3升桶倒空,把那2升倒入3升桶中;
(3)用5升桶满桶再向3升里倒,倒入一升就满,大桶里剩下的是4 升。
7、在一天的24小时之中,时钟的时针、分针和秒针完全重合在一起的时候有几次?都分别是什么时间?你怎样算出来的?
【答案】思路
这很明显,1:05之后有一次,2:10之后有一次,3:15之后有一次,4:20之后有一次,5:25之后有一次,6:30之后有一次,7:35之后有一次,8:40之后有一次,9:45之后有一次,10:50之后有一次,12:00整有一次。24小时之中总共22次。
而且,相邻两次重合之间所需时间相同,即12/11小时。准确说都分别是0点,12/11点,24/11点,36/11点,48/11点,60/11点,72/11点,84/11点,96/11点,108/11点,120/11点,12点,144/11点,156/11点,168/11点,180/11点,192/11点,204/11点,216/11点,228/11点,240/11点,252/11点。
有趣的是这11个点,正好是圆内接正11边形,其中一个顶点在12点处。
8、12个球一个天平,现知道只有一个和其它的重量不同,问怎样称才能用三次就找到那个球。
【答案】思路
分三组:每组四个,第一组编号1-4,第二组5-8,第三组9-12.
第一次称:天平左边放第一组,右边放第二组。
A 第一种可能:平衡。则不同的在第三组。
接下来可以在左边放第9、10、11号,右边放1、2、3号三个正常的。
a.如果平衡,则12号是不同的;
b.如果左重右轻,则不同的在9、10、11号中,而且比正常球重。再称一次:9放左边,10放右边,如果平衡,则11号是不同的;如果左重右轻,则9号是不同的,如果右重左轻,则10号是不同的。
c.如果左轻右重,道理同b
B 第二种可能:左重右轻,则不同的在1-8号中,但不知比正常的轻还是重。
第二次称:左边放1、2、5号,右边放6、9、3号。
a.如果平衡。则不同的在4、7、8中。可以称第三次:左边放4、7,右边放9、10。如果平衡,则8是不同;如果左重右轻,则4是不同;如果左轻右重,则7是不同。
b.仍然左重右轻。则不同的在位置没有改变的1、2、6中。可以称第三次:左边放1、6,右边放9、10。如果平衡,则2是不同; 如果左重右轻,则1是不同;如果左轻右重,则6是不同。
c:左轻右重。则不同的在5、3、中,因为只有它们改变了原来的位置。可以称第三次:左放5,3,右放9,10。如果左轻右重,则5是不同,如果左重右轻,则3是不同。
C 第三种可能:左轻右重,道理同B
至此,不论发生任何情况,称三次都可以找出不同,而且知道比正常的轻了还是重了。
那如果是13个小球呢?
解析:
13个球一个天平,现知道只有一个和其它的重量不同,问怎样称才能用三次就找到那个球?
4–4称一次,如果平衡,就在另5个中,拿3个正常的与5个中的三个对比,如果相等,在剩余两个中,拿正常的一个与剩余2个中一个对比,出结果,如果上次,3v3不相等,那么知道到球是轻还是重,取不正常的3个中的2个1v1,得结果。
如果 4v4不相等
取正常的(5个中取)3个放入左天平,把左天平3个放入右天平,右天平取出3个,
如果相等,必在从右天平取出的3个中,且知是重还是轻,从中取2,进行1v1得结果,
如果不相等,天平的偏重方向未发生改变,说明必在 4v4时未被移动的两个球,左右一个,取一个正常的与其中一个对比得结果
如果不相等,天平偏重发生改变,必在从左天平移动到右天平那三个球中,且知球的是偏重还是篇轻,去其中2个1v1得结果
不会超过3次,不管哪种情况
9、一个岔路口分别通向诚实国和说谎国。来了两个人,已知一个是诚实国的,另一个是说谎国的。诚实国永远说实话,说谎国永远说谎话。现在你要去说谎国,
但不知道应该走哪条路,需要问这两个人。请问应该怎么问?
【答案】思路
问“你的国家怎么走?” 他们都会指向诚实国
或
问哪条路不到你的国家, 他们都会指向说谎国
10、五个海盗抢到了100颗宝石,每一颗都一样大小和价值连城。他们决定这么分: 抽签决定自己的号码(1、2、3、4、5)
首先,由1号提出分配方案,然后大家表决,当且仅当超过半数的人同意时,按照他的方案进行分配,否则将被扔进大海喂鲨鱼 。
如果1号死后,再由2号提出分配方案,然后剩下的4人进行表决,当且仅当超过半数的人同意时,按照他的方案进行分配,否则将被扔入大海喂鲨鱼。
依此类推
条件:每个海盗都是很聪明的人,都能很理智地做出判断,从而做出选择。
问题:第一个海盗提出怎样的分配方案才能使自己的收益最大化?
【答案】思路
11、一道关于飞机加油的问题,已知:
每个飞机只有一个油箱,飞机之间可以相互加油(注意是相互,没有加油机),一箱油可供一架飞机绕地球飞半圈,
问题:
为使至少一架飞机绕地球一圈回到起飞时的飞机场,至少需要出动几架飞机?
(所有飞机从同一机场起飞,而且必须安全返回机场,不允许中途降落,中间没有飞机场)
【答案】思路
至少需要出动5 架飞机。思路是这样的,一架飞机要想完成绕地球一周的飞行,至少需要别的飞机给它提供1 箱油。最划算的办法显然是,派飞机和它结伴飞行前四分之一周以及后四分之一周,(因为这两段路程距离基地近所花代价小。)由它独立飞行中间的半程。必须保证两个加油点,前四分之一处,加满,后四分之一点,及时补充。那么必须有两架飞机与目标机结伴飞行四分之一周,这两架飞机需要做折返飞行,正好花费2 箱油。所以补充油的任务实际上该由另外两架飞机完成。这两架飞机飞八分之一周,做折返飞,正好富余1 箱油。因此,5 架飞机刚好完成任务。到了此时,问题只考虑了一半。能够提供多少油并不意味着就能够全部接受,受到结伴飞行的距离,即腾出的油箱空间所限制。而以下做法正好可以满足此条件。
3 架飞机同时从机场出发,飞行八分之一周,各耗油四分之一。此时某架飞机给其余两架补满油,自己返回基地。另一机和目标机结伴,飞至四分之一周,给目标机补满油,自己返回。
==飞到1/4还想给别人加油呢?自己跑回来刚刚够了。
目标机独自飞行半周,与从基地反向出发的一机相遇,2 机将油平分,飞至最后八分之一处,与从基地反向出发的另一机相遇,各分四分之一油,返回。