因为你会喝酒
500桶酒,其中1桶是毒酒;48小时后要举行酒会;毒酒喝下去一滴会在之后的第23-24小时内毒死人;国王决定用囚犯来试酒,只要求用最少的囚犯来测试出哪一桶是毒酒,问最少需要多少囚犯才能保证找出毒酒(饮酒的时间忽略不计)?
最多需要250个。先让这250个囚犯喝第一批250桶酒中的一滴或n滴酒,当然要做好记录。等到了24小时的时候,有囚犯中毒而死,这就发现了那桶酒有毒。如果还没有发现,就让这250个囚犯中的249个喝剩下的250桶酒中的249桶……。如此一来,要死一个囚徒或一个也不死。
至于最少需要多少个囚犯试酒,我试着分析:
先找出来50个囚犯,每个囚犯给取10桶酒中的两滴喝下。当然是做好记录。这样的话,24小时后必然有一个囚徒死去。再从剩下的49个囚徒中选10个,让他们喝下死去的囚徒喝过的酒,……。这样的话,需要死两个囚徒,一共动用50个囚犯。
再进一步优化呢,找来23个囚犯,每个囚犯尝23桶酒,有些囚犯只能尝22桶酒。第一个24小时下来,死掉一个囚犯。让剩下的22囚犯尝死掉的囚犯喝过的哪22桶酒、或23桶酒中的22桶。第二个24小时以后就知道那桶酒有毒了。这样的话,需要死掉一个或两个囚犯,但是仅动用23个囚犯。
看来我还没有得老年性痴呆。
23 组,21-22桶。
第一轮要22人。
第二轮要20-21人。
因为你会喝酒
500桶酒,其中1桶是毒酒;48小时后要举行酒会;毒酒喝下去一滴会在之后的第23-24小时内毒死人;国王决定用囚犯来试酒,只要求用最少的囚犯来测试出哪一桶是毒酒,问最少需要多少囚犯才能保证找出毒酒(饮酒的时间忽略不计)?
最多需要250个。先让这250个囚犯喝第一批250桶酒中的一滴或n滴酒,当然要做好记录。等到了24小时的时候,有囚犯中毒而死,这就发现了那桶酒有毒。如果还没有发现,就让这250个囚犯中的249个喝剩下的250桶酒中的249桶……。如此一来,要死一个囚徒或一个也不死。
至于最少需要多少个囚犯试酒,我试着分析:
先找出来50个囚犯,每个囚犯给取10桶酒中的两滴喝下。当然是做好记录。这样的话,24小时后必然有一个囚徒死去。再从剩下的49个囚徒中选10个,让他们喝下死去的囚徒喝过的酒,……。这样的话,需要死两个囚徒,一共动用50个囚犯。
再进一步优化呢,找来23个囚犯,每个囚犯尝23桶酒,有些囚犯只能尝22桶酒。第一个24小时下来,死掉一个囚犯。让剩下的22囚犯尝死掉的囚犯喝过的哪22桶酒、或23桶酒中的22桶。第二个24小时以后就知道那桶酒有毒了。这样的话,需要死掉一个或两个囚犯,但是仅动用23个囚犯。
看来我还没有得老年性痴呆。
23 组,21-22桶。
第一轮要22人。
第二轮要20-21人。