A king has 1000 bottles of wine and one has been poisoned. Even a sip of the poisoned wine is enough to kill a person.
The king asks the royal jailor to identify the poisoned wine bottle by testing them on the prisoners.
It takes up to 24 hours for the poison to take effect. There are unlimited number of prisoners at the jailer’s disposal. What is the minimum number of prisoners the jailer needs to identify the poisoned wine bottle in 24 hours?
The jailor needs 10 prisoners.
Binary Maths is needed to solve this puzzle. Below is an example on how you use binary logic to find the number of prisoners for 8 bottles of wine.
Assume the wine bottles are named W1, W2, W3…W8. The prisoners are named P1, P2 and P3.
The above chart summarises which prisoner has to drink from which wine bottle. ‘1’ indicates that the prisoner has to drink from that bottle. Bottle W1 is not fed to any prisoner. Bottle W2 is fed to prisoner P3. Bottle W3 is fed to prisoner P2 and so on.
If no one dies, then wine bottle W1 is poisoned.
If only prisoner P3 dies, bottle W2 is poisoned.
If only prisoner P2 dies, bottle W3 is poisoned.
If both prisoners P2 and P3 die, bottle W4 is poisoned.
If only prisoner P1 dies, bottle W5 is poisoned.
If both prisoners P1 and P3 die, bottle W6 is poisoned.
If both prisoners P1 and P2 die, bottle W7 is poisoned.
If all 3 prisoners die, bottle W8 is poisoned.
So to test 1000 bottles of wine, 10 prisoners are sufficient as that will allow (2^10) 1024 unique combinations.