可能重复:
Algorithm to find minimum number of weighings required to find defective ball from a set of n balls
我们有n个硬币。其中一个是假的,更重或更轻(我们不知道)。我们有2个板块的秤。我们怎样才能在p动作中获得假币?
你能帮我写一个这样的程序吗?不需要整个计划,只需要想法。
谢谢。
答案 0 :(得分:3)
这称为Balance puzzle。有关此问题的概括,请参阅Marcel Kołodziejczyk’s Two-pan balance and generalized counterfeit coin problem。
答案 1 :(得分:1)
我记得在n = 12和13时解决这个问题,部分是手工解决,然后是最后的程序。我不知道如何解决一般问题...但我知道如何开始 - 通过考虑n
的小值并手工完成。< / p>
我怀疑基本上可以递归地使用模式......但是你会发现使用笔和纸来寻找小值(例如n = 4到7)比编码要容易得多。
答案 2 :(得分:0)
将硬币放在每一边,真正的硬币将相互平衡,假装将使标尺走向任何一种方式。当秤不平衡时,你刚刚穿上的2个中的一个是假的,每个都是针对一个真正的硬币。
如果硬币是你交给的对象,那么你应该可以很容易地在一个程序中做到这一点。