----
The prison warden brings a hundred prisoners to an empty room and hands each of them one of a hundred cards labeled from 1 to 100, and says:
"In the next room there are 100 drawers. Into each drawer has been placed one of a hundred cards labeled from 1 to 100."
"One by one we will let you into the next room. Each of you will be given fifty chances to look inside one of those drawers, and then you will continue into the final waiting room."
"If every single one of you is able to find the card in the drawers that matches the one you have been given, you will all be released from prison today."
"One more rule - if any of you, after entering the room with the drawers, communicates any information to the remaining participants, you all fail."
The prisoners talk among themselves, discussing strategies for opening the drawers that might let them all find their number, and be released today.
They know that the chance for one prisoner to find their card, choosing randomly, is 50/100, or 1/2. The problem is that they all need to find their card, and if they all choose randomly then the chance they all succeed is (1/2)^100 - or (7.9 * 10^-29)%
One of the prisoners, having just read about how rainbow tables work, realised there was a strategy that would give them a greater than 30% chance to all succeed.
What was their strategy?
----
It's trivial to find the solution to this problem if you've never seen it before, search for the 100 prisoners problem. I don't actually know if reading about ranbow tables makes it easier to reason the solution, but there seemed a strong similarity so hopefully someone can figure it out!