12颗小球,有一颗质量不一样的面试题

今日面试,遇到了一道比较有意思的面试题,由于本人才疏学浅,所以当时并没有答上来。回来翻阅资料后才能白其中的原理。有一种,卧槽,这么简单 的感觉,特此分享留念!

题目:有12课小球,其中有一颗重量不一样,给你一个天平,要你称3次找出哪颗小球不一样,是重了还是轻了!

最开始我想到的是二分法查找  即 12课球 分成 1 2 3 4 5 6   7 8 9 10 11 12 各6个 去天枰对比 ,后来发现 称3次不够。

回来查阅资料后,恍然大悟。不能二分 要3分 即 1234   ,5678 , 9 10 11 12

示例1:我们先假设 8 是坏小球  轻于其他小球

第一次称:先取出 1234 和 5678称

发现   天枰是斜的,1234重  5678轻了。可以判断 坏小球必定在这8个数当中

 第二次称:把  右边的567放到左边来,同时在右边增加9 10 11,去掉左边的234.

左边这时为 1567 右边  这时为8 9 10 11

发现 天枰还是斜的 1567重 8 9 10 11轻。可以得出 1和8可能是坏小球 1重或者8轻

第三次称:左边放1 右边放 9

结果为平衡。可以断定 8是坏小球,且重量轻了!

示例2:假设5是坏小球  重于其他小球

第一次称:先取出 1234 和 5678称

发现   天枰是斜的,1234轻  5678重了。可以判断 坏小球必定在这8个数当中

 第二次称:把  右边的567放到左边来,同时增加9 10 11,去掉左边的234.

左边这时为 1 5 6 7 右边  这时为8 9 10 11

发现 天枰还是斜的 1 5 6 7重 8 9 10 11轻。可以得出 567重有坏小球,且重于其他小球

第三次称:左边 5 右边6

发现 左边重,右边轻,第二次已经知道了小球是重还是轻了,那么这里可以直接得出  左边的5是坏小球。

 

思考:既然分3组可以实现3次称得出坏小球和重了还是轻了,那么我分四组是否也可以呢?下面开始实践

分组 1 2 3 ,4 5 6, 7 8 9, 10 11 12

示例1:假设坏球是 5  且重量轻了

第一次:123 和456 

结果 123重,456轻 表示坏球在 这六个数之间, 剩余未上称的都是好球

第二次:145和678

结果:145轻 678重  表示 45中有坏小球且重于其他小球

第三次 4和6

结果:平了  那5就是坏小球

我去!!!貌似可以啊!再试几个

示例2:假设坏球是10且重量轻了

第一次:123 和456 

结果  平了,说明 789和10 11 12中才有坏小球

第二次:左边 123和右边789

结果 平了。。。。emmmmmmm 好像3次实现不了啊!!!在纸上演进了无数次,没有找到3次就可以找出小球的方法!放弃!!!
本着求虐求教育的心态,如果各位看官大佬有其他的更简单的实现方法,欢迎指教!小弟感激不尽!!!

  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 1
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值