程序员常见面试逻辑智力题(笔试题)附参考答案

1,11,21,1211,111221,下一个数是什么?

参考答案:
312211
解题思路:
第一个数是1
第二个数11表示第一个数有1个1
第三数21表示第二个数有2个1
第四个数1211表示第三个数有1个2和1个1
第五个数111221表示第四个数有1个1、1个2和2个1
发现规律:后一个数都是通过前一个数得出,而且偶数位表示前一个数里出现的数字,奇数位表示出现这个数字的个数,且按顺序计数。
因此第六个数312211表示第五个数有3个1、2个2和1个1。
本题得解~

在横线上填写数字,使之符合要求。
要求如下:对应的数字下填入的数,代表上面的数在下面出现的次数,比如3下面是1,代表3要在下面出现一次。
. 0 1 2 3 4 5 6 7 8 9
. _ _ _ _ _ _ _ _ _ _

参考答案:
6 2 1 0 0 0 1 0 0 0
解题思路:
首先从0下面填入的数字开始:
0下面填9,然后9下面填1,这时候只剩8个位置填0,与前面填的9个0冲突
0下面填8,然后8下面填1,那1下面填1,这时候只剩7个位置填0,与前面填的8个0冲突
0下面填7,然后7下面填1,那1下面填1,这时候剩7个位置填0,但是又发现7和1下面加起来是2个1,所以1下面不能填1。如果1下面填2呢?那2下面是不是就要填1,这时候只剩6个位置填0,与前面填的7个0冲突
0下面填6,然后6下面填1,按照上一个思路,1下面只能从2开始填,2在1下面出现1次,所以2下面填1。此时发现空位正好出现6次,空位补零,1出现2次,2出现1次,符合要求。
本题得解~

有7克、2克砝码各一个,天平一只,如何只用这些物品三次将140克的盐分成50、90克各一份?

参考答案:
左侧<= 天平 =>右侧
70(盐)=70(盐)
9(盐 ) =7(砝码)+2(砝码)
11(盐)= 9(盐)+2(砝码)
解题思路:
第一步:先把140克盐平均分成两份,天平左右各一半,使天平平衡。
第二步:天平右侧放7克+2克的砝码,一共9克;将70克盐倒出9克于天平左侧,使天平平衡,剩下61克盐。
第三步:天平右侧放第二步中已经测量的9克盐+2克的砝码;将上一步剩下的61克盐倒出11克于天平左侧,使天平平衡,剩下50克盐,再把其余的盐倒在一起就是90克盐。
本题得解~

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

参考答案:
3+3-5+3=4

3公升桶(+表示装满)5公升桶(-表示倒掉)
+30
03
+33
1-5
10
01
+31
04

解题思路:
第一步:先把3公升的桶装满,然后倒进5公升桶中
第二步:再把3公升的桶装满,然后再倒进5公升桶中,此时剩1公升水
第三步:把5公升水倒掉,然后把1公升水倒进5公升桶中
第四步:把3公升的桶装满,然后倒进5公升桶中,此时有4公升水
本题得解~
另一种解法
5-[3-(5-3)]=4

3公升桶(-表示倒掉)5公升桶(+表示装满)
0+5
-32
02
20
2+5
-34
04

总结: 从以上两种解法可以看出,我是根据提供的提桶容量进行一定数量的加减法和括号计算得出目标数字。因此这里可以用数学的二元一次方程表示题目。
设装满或倒掉3公升的提捅x次,装满或倒掉5公升的提捅y次,其中x、y均为整数且x、y大于0时表示装满,x、y小于0时表示倒掉。
解3x+5y=4,得x=3时,y=-1或x=-2时,y=2…等
分别带入验证上面两种解法可行!如果x、y无解,则无法得出目标数字。

注意:该方程用于解最后两个提桶其中一个为目标数字,另一个为空的情况。在我们已经得到目标数字的情况下,我们仍然要将另一个桶里的水全部倒掉。但是答题描述的时候不用加最后一次倒掉的水。此方法用于辅助解题。
请用上面的结论解决下面另一道类似的题目

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

参考答案:
5-[6-(5+5-6)]=3
解题思路:
5x+6y=3
x=3时y=-2…等
x为正数所以5升的水壶要先装满一次
然后思考5升水壶装满3次和6升水壶倒掉2次如何组合?

5升水壶(+表示装满)6升水壶(-表示倒掉)
+50
05
+55
4-6
40
04
+54
3-6
30

未完待续……

  • 4
    点赞
  • 23
    收藏
    觉得还不错? 一键收藏
  • 5
    评论
评论 5
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值