A bad king has 1000 bottles of very expensive wine. A neighboring King
plots to kill the bad king and sends a servant to poison the wine.
Unfortunately the bad king’s guards catch the servant after he has only
poisoned one bottle. Alas, the guards don’t know which bottle but know
that the poison is so strong that even if diluted 1,000,000 times it
would still kill the king. Furthermore, it takes one month to have an
effect. The bad king decides he will get some of the prisoners in his
vast dungeons to drink the wine. Being a clever bad king he knows he
needs to murder no more than 10 prisoners – believing he can fob off
such a low death rate – and will still be able to drink the rest of the
wine at his anniversary party in 5 weeks time.
Explain How ?
Answer:-
Number the bottles 1 to 1000, and write the number in binary format.
bottle 1 = 0000000001
bottle 250 = 0011111010
bottle 1000 = 1111101000
Now take your prisoner’s 1 through 10 and
Let prisoner 1 take a sip from every bottle that has a 1 in its least significant bit.
Let prisoner 10 take a sip from every bottle with a 1 in its most significant bit. etc.
Prisoner – 10 9 8 7 6 5 4 3 2 1
Bottle 924 – 1 1 1 0 0 1 1 1 0 0
In this, bottle #924 would be sipped by 10,9,8,5,4 and 3
That way if bottle #924 was the poisoned one, only those prisoners would die.
After four weeks,
line the prisoners up in their bit order and read each living prisoner as a 0 bit and each dead prisoner as a 1 bit.
The number that you get is the bottle of wine that was poisoned.
please leave comments if you have any questions.