您的位置:首页 > 其它

【逻辑题】分享一道在UC笔试中遇到的逻辑题

2013-05-01 21:11 274 查看
题目是这样的:

有十袋金子,每袋中有十个金子,每个金子重10克,有一袋金子是假的,每个金子重9克,请问如何通过一次称量后,找出这一袋假金子。

后来通过别人的答案思考了一下,其实不难,要理清思路:

如果说是要找出假金子的那一袋,那就是说要找出哪一袋,而这个哪一袋肯定要通过编号才能指明清楚。但是最终要指明是第几袋是假的,那么就说明,能找出的这一袋跟序号是有直接关系的,说不定通过序号的计算就能找出来。

所以为他们编号1~10,我们先假设10袋金子都是真货,那么每袋100克。我们将每一袋分割成10等分,也就是说,每一份是一个金子。然后,我们从编号为1的袋子开始,编号多少,我们就拿出多少份。

比如编号一的袋子里,我们取出一个金子,编号二的袋子,我们取出两个金子......以此类推...

假如每一袋都是真的,我们称取所有取出的金子时重量应该为:10+20+30+40+50+60+70+80+90+100=550 g

但是假设第N袋是假的,因为每一份都比真的少了1 g,那么第N袋就比真的第N袋少了 (N*1) g

所以我们称一次所有取出金子的总重量,这个总重量比550 g少多少g,便可以判定第几袋是假的了。

e.g.:

第4袋是假的,其他为真。那么总的重量为:10+20+30+4*9+50+60+70+80+90+100=446 g

550 g - 446 g = 4 便可知道第四袋是假的~

总结:其实真的不难...可能是这方面的东西接触太少了吧,无从下手,笔试的时候只能被鄙视了~ 不过这次UC笔试也收获了挺多东西,加油~
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: