经典面试题 药片称重面试题 只称重一次找出十堆药片里面重量是2g的药堆

有十堆药,每一堆都有无数片药丸,但是每一堆的药丸要么是1g的要么是2g的。现有一把可以显示重量的电子秤,通过只称重一次,找出是2g的要堆。

(1)这十堆里面只有一堆是2g的,找出这一药堆。

        首先给药堆分别编号为1--10,第一堆取1片,第二堆取2片........第十堆取10片,称重得出总质量M,总质量M减去假设药片全是1g的总质量((10+1)*5=55 )得出的结果是多少就是编号为几的要堆。

(2)这十堆里面只有N堆(0<=N<=10)是2g的,找出所有是2g的药堆。

         首先给药堆分别编号为1--10,按照等比数列进行取药,第一堆取1片,第二堆取2片,第三堆取4片........第十堆取512片,称重得出总质量M,总质量M减去假设药片全是1g的总质量(1023 )得出的结果是W,将W转换为二进制哪一位为1,就说明那一堆为2g的。

猜你喜欢

转载自blog.csdn.net/weixin_45813351/article/details/121376734