逻辑吧 关注:115,795贴子:607,211
  • 46回复贴,共1

难度较大的称重问题

只看楼主收藏回复

这是一道本人自编的推理题,本人在其它地方也有发表过,个人感觉难度大,欢迎推理高手指教,谢谢!
有八罐(n=8)硬币,每罐硬币数量为 m,每个真硬币重量为10g。已知其中有两罐硬币为假硬币,一罐每个硬币重9g,另一罐每个重8g。要求仅用一个电子称(可精确到克),至少称一次,就能保证分别找到这两罐假币,那么 m 的最小值是多少?(如果n=10,n=100又该如何作答?请给出推理过程)


IP属地:湖南来自Android客户端1楼2024-10-17 10:08回复
    应邀
    本题策略是在每一罐中取出一个数字的硬币,然后把取出的硬币加起来称一次就知道是哪两个数字,就知道是哪两罐了。所以换成数学考虑,就是“要找到8个数字,这8个数字,每两个加起来都是独一无二的。”
    试了一下8罐:
    【1】从最小1开始选取,取1、2、3时候,明显这三个数字任意两个加起来都是独一无二的。可取;
    【2】之后数字是4,若取的话则是1、2、3、4,明显其中2+3=1+4,所以4不可取,依据这个简单计算可以继续核对下去。得到接下来数字5,若是1、2、3、5,那么任意两个数字加起来是独一无二的了。所以5可取。
    【3】依据上面两步,可以核算下去,数字可取是1、2、3、5、8、13、21,7个数字了对不,好了,其实这个时候已经发现一个规律了,那就是接下来的数字就是前面2个数字的和。
    最终得到1、2、3、5、8、13、21、34这些数字,那么结果就是每罐最小34个硬币即可。
    至于说更多罐,那也是同样规律。
    即10的时候,应该是1、2、3、5、8、13、21、34、55、89,每罐最小89个硬币。


    IP属地:广东2楼2024-10-17 11:51
    收起回复
      试了一下,按[0,1,4,5,16,17,20,21]这个数组抽取对应数量,应该恰好与56种情形一一对应,也就是最小是21


      IP属地:河南3楼2024-10-17 23:52
      收起回复
        【0 1 4 5 16 17 20 21】
        八个数值的二进制如下:
        00000
        00001
        00100
        00101
        10000
        10001
        10100
        10101
        就是把四楼的右起第二列全部从1改成0,其余不变。
        我借力打力,扩散了一下本问题,有别的朋友发现了该规律。


        IP属地:广东4楼2024-10-23 09:18
        收起回复
          【0 1 4 5 16 17 20 21】
          (黄色是轻1g的数量,青色是轻2g的数量)

          想象如果把对角线的黑格子也填上数值,那么就是在8x8的格子里填满0~63所有数值。
          这个二进制的意义就是当它们双倍时会向左移一个位,如此再跟这八个数值各自两两双加就会得出不重复的64个数值。


          IP属地:广东5楼2024-10-23 09:41
          收起回复