智力题

2018/08/13 智力题

绳子类

一条绳子(粗细不均,长短不一),从一头点燃,全部烧完要耗时1个小时,问如何用这条绳子测出半个小时?(初级)

有一些绳子(粗细不均,长短不一),但是每根绳子点燃后都烧一个小时,问用什么方法可以用这些绳子计算45分钟的时间,计算1小时15分钟时间呢?(中级)

这类题目比较简单。由于绳子是双向的,只需同时点燃绳子的两端,便可得到1/2小时的时间,这种方法暗含着以一个绳子单向点燃时间作为参照物;同时点燃两根绳子,一根双向点燃,另一根单向点燃,待第一根绳子燃烧完毕后,点燃第二根绳子的另一端,便得到45分钟时间;同理,可计算1小时15分钟时间。

作图类

十枚硬币排5排,每排4枚硬币,怎么排?(初级)

五个大小相同的一元人民币硬币。要求两两相接触,应该怎么摆?(初级)

排成3行3列的矩阵形式的九个点。如何用一笔划出4条直线,经过这所有九个点。(中级)

在9个点上画10条线,要求每条线上至少有3个点,这9个点怎样排列?(中级)

这些题目往往需要不断地尝试和琢磨,才能做出来。一般需要借助特殊的图形(如问题1是五角星排列)或者打破平面常规(如问题2便需要立体考虑)。问题3:用1~9九个数字代表点,从左至右,由上往下排列;第一条经过左边147,并且延伸一个点的距离;第二条经过86也延伸一个点;第三条经过321;第四条经过159。问题4: https://blog.csdn.net/qq_17034717/article/details/51235177。

联想面试

有100盏灯,从1~100编上号,开始时所有的灯都是关着的,第一次,把所有编号是1的倍数的灯的开关状态改变一次;第二次,把所有编号是2的倍数的灯的开关状态改变一次;第三次,把所有编号是3的倍数的灯的开关状态改变一次;以此类推,直到把所有编号是100得倍数的灯的开关状态改变一次。问,此时所有开着的灯的编号。

https://www.1688.com/ask/a05224ea-a00e-4247-b02c-8fe52acbfb69.html

只有约数(包含1和其本身)是奇数个才会亮,认识到这点很关键。例如8不是平方数,其约数为1,2,4,8.其中,1和8成一对,2和4成一对,所以其约数是偶数个,也就是说灯灭。

P先生、Q先生都具有足够的推理能力。这天,他们正在接受推理面试。1.他们知道桌子的抽屉里有如下16张扑克牌: 红桃A、Q、4,黑桃J、8、4、2、7、3,草花K、Q、5、4、6,方块A、5。约翰教授从这16张牌中挑出一张牌来,并把这张牌的点数告诉P先生,把这张牌的花色告诉Q先生。这时,约翰教授问P先生和Q先生: 你们能从已知的点数或花色中推知这张牌是什么牌吗?P先生: “我不知道这张牌。” Q先生: “我知道你不知道这张牌。” P先生:”现在我知道这张牌了。” Q先生:”我也知道了。” 请问: 这张牌是什么牌?

方块5

博弈类

假设排列着100个乒乓球,由两个人轮流拿球装入口袋,能拿到第100个乒乓球的人为胜利者。条件是:每次拿球者至少要拿1个,但最多不能超过5个,问:如果你是最先拿球的人,你该拿几个?以后怎么拿就能保证你能得到第100个乒乓球?(中级)

16个硬币,A和B轮流拿走一些,每次拿走的个数只能是1,2,4中的一个数。谁最后拿硬币谁输。问:A或B有无策略保证自己赢?假设都很聪明。(高级)

传说,从前有五个海盗抢得了100枚金币,他们通过了一个如何确定选用谁的分配方案的安排。即:1.抽签决定各人的号码(1,2,3,4,5);2.先由1号提出分配方案,然后5个人表决.当且仅当超过半数人同意时,方案才算被通过,否则他将被扔入大海喂鲨鱼;3.当1号死后,再由2号提方案,4个人表决,当且仅当超过半数同意时,方案才算通过,否则2号同样将被扔入大海喂鲨鱼;4.往下依次类推……。根据上面的这个故事,现在提出如下的一个问题。即:我们假定每个海盗都是很聪明的人,并且都能够很理智地判断自己的得失,从而做出最佳的选择,那么第一个海盗应当提出怎样的分配方案才能够使自己不被扔入大海喂鲨鱼,而且收益还能达到最大化呢?

(分析)博弈类的题目往往需要逆向思维考虑问题,这些题目也不例外。

对于问题1,要确保自己能拿到最后一个球,应该在最后一轮(“一轮”定义为对方和自己依次取一次球)中剩余6个求,这样,对方拿x个,你拿剩下的6-x个便可以获胜,依次往前推,100个乒乓球可包含100/6=16轮,剩下100%6=4个。于是,可以得到答案:自己先取4个球,然后对方取x个,自己取6-x个,这样便可保证自己取到第100个球。

对于问题2,与问题1类似,需要针对A拿的硬币个数,确定B对应拿几个(假设B赢)。采用逆推的方法,最后必须剩余1个,且此时让A拿,倒数第二轮可剩余3个或者6个,这样,A拿1个,B对应拿2个;A拿2个,B对应拿1个;A拿4个,B对应拿2个,…,依次逆推,16个硬币最多进行16/3=5轮,最后正好剩余16%3=1个。

对于问题3,可参考:http://wenku.baidu.com/view/086e9ce8856a561252d36f4f.html

倒水类

1.假设有一个池塘,里面有无穷多的水。现有2个空水壶,容积分别为5升和6升。问题是如何只用这2个水壶从池塘里取得3升的水?(初级)

2.如果有无穷多的水,一个3公升的桶,一个5公升的桶,两只桶形状上下都不均匀,问你如何才能准确称出4公升的水?(初级)

3.如上题,如果是7公升和11公升的桶,怎样准确量出2公升的水?(初级)

4.有三个酒杯,其中两个大酒杯每个可以装8两酒,一个可以装3两酒。现在两个大酒杯都装满了酒,只用这三个杯子怎么把酒平均的分给4个人喝?(中级)

(分析)形式化倒水问题:无穷多水,容量a,b(a<=b)的水壶倒出c(c<=b)升水。

结论:c%***(a,b) == 0 时有解,可用扩展的Euclid 定理加以证明:即存在整数x,y ,使得ax+by=***(a,b).

通用解法:( 容量A,B 的水壶倒C 升水)

int t = 0;

while(t != c){

Do(fill A),Do(pour A B);

t = t+A;

if(t >= B){

t = t – B;

Do(empty B), Do(pour A B);

}

}

如问题1:

Oper a b t (A=5,B=6)

Fill A, Pour A B 0 5 5

Fill A, Pour A B 4 6 10

Empty B, Pour A B 0 4 4

Fill A, Pour A B 3 6 9

Empty B, Pour A B 0 3 3 (success)

称重类

1.一共12个一样的小球,其中只有一个重量与其它不一样(未知轻重) ,给你一个天平,只称三次,找出那个不同重量的球?(初级)

2.如果一共13个一样的小球,其中只有一个重量与其它不一样(未知轻重) ,给你一个天平,只称三次,找出那个不同重量的球?(高级)

##

25匹马,5个跑道,最少比多少次能比出前3名?前5名?

https://blog.csdn.net/goodfrar/article/details/51661610

参考

Search

    Table of Contents