作者ACGfans (菜心)
看板Inference
标题Re: [问题] 金币秤重..
时间Thu Jan 19 20:05:57 2006
※ 引述《chikuo ()》之铭言:
: ※ 引述《oodh (oodh)》之铭言:
: : 拿一个袋子,装1号袋一枚,2号袋两枚...依此类推
: : 此袋共有55枚金币
: : 秤此袋,看比550克多几克,就知道本来几号袋是假的
: : 不过这样一来,要把假的挑出,就要在掺入大袋中之前先把每袋每枚金币用记号分开
: : 不然只是秤心酸的(最後要从那55枚中找出来,更麻烦)
: 看到这题出个进阶
: 如同上面假设
: 但有n个袋子里面装的是假金币
: 要如何找出哪几个袋子装假金币
: (n = 未知数,有可能只有1个袋子 也有可能全部都是)
你是说现在可能不只一袋假金币吗?
假设总共有m个袋子
那这样就改成
1号袋拿1枚,2号袋拿2枚,3号袋拿4枚,4号袋拿8枚,5号袋拿16枚....
第m袋2^(m-1)枚
这麽一来总共会有2^m-1枚金币
原本应该是(2^m-1)*10克
但因为混杂了假金币 所以实际重量会比较重
假设测出来的重为X
那就可以得出多的重量为 X-(2^m-1)*10
再把这个数改成2进位
则从右边数过来为1的即为假的金币袋
EX: 有5个袋子,照上面的拿法共拿31枚金币
原本应为310g 若实际测出来为323g
将323-310=13 这是多出来的重
转换成2进位 01101
从右边数过来 54321
则编号 1、3、4 即为假金币袋
--
...在这苍穹的彼端...有着持有羽翼的少女
...那是自遥远的曩昔起...直到现今此时
...她一直在不变的大气中,展开双翼持续地承受着来风…
--
※ 发信站: 批踢踢实业坊(ptt.cc)
◆ From: 222.250.14.31