The best part about the puzzle is the first reaction, which is "no way you can do that! You have 1 bit." =)
Fun variants: (at least one isn't possible)
The prisoners are in solitary, and have no clocks. They don't know what day it is when they are brought to the room.
Every prisoner is given a number. Someone has to report the sum of all the numbers (or, roughly equivilently, list all of the numbers, if you can bound each.)
Every prisoner has to say "I know everyone has been in the room" before anyone is let free.
Every prisoner has to say "I know everyone has been in the room" before everyone is let free, but once you say it, you are moved to another cell block.
All prisoners have to say "I know everyone has been in the room" at once.
The warden listens in. Based off your algorithm, he can change which prisoner goes in when. However, every prisoner will visit an infinite number of times in an infinite period of time.
__________________
Last edited by JHVH : 10-29-4004 BC at 09:00 PM. Reason: Time for a rest.
|