We have a normal deck of 52 cards. We want to do the following magic trick:
A person from the audience chooses 5 random cards. The magician's assistant looks at the 5 cards, chooses 4 of them, hands them to the magician one by one face up and keeps the other one hidden. The magician then guesses the fifth card (the one that the assistant kept hidden) just by looking at the 4 cards he was handed in.
Is it possible to devise a strategy, so that no matter what the original 5 cards were, the trick always works?
(In reply to
Lots of Little Somethings by DJ)
(read the previous comment first)
Actually, on second thought, the 'suit' card could also be used to give an indication of the value, with the way it is laid down. So, you then have four bits to work with, and a straight binary system is effective. Just let AK represent binary values 113 (omit zero so that 210 are intuitive). Then use the corners method I described before, or anything else you want, to give each card a value of '1' or '0' by the way it is laid down.
Maybe even by the way they are arranged; you could have them lined up horizontally with cards offset nearer to the assistant given a value of '1' and those nearer the magician a value of '0' (that would make it impossible to distinguish '0000' from '1111', but since we are not using 0 or 15, it does not matter). If you did that, the magician could be turned around or something while the assistant is laying down the cards, to alleviate suspicions of communication by the assistant.
A second look at the description in the problem says that the assistant hands the cards to the magician, in which case I default to my previous suggestion.
Anyway, however you do it:
0001 = A
0010 = 2
0011 = 3
0100 = 4
0101 = 5
0110 = 6
0111 = 7
1000 = 8
1001 = 9
1010 = 10
1011 = J
1100 = Q
1101 = K
0000, 1110, 1111 = start sweating!
And the suit of the hidden card is the same as the suit of the first (or the second, third, last, whatever the decision) card.

Posted by DJ
on 20030511 14:43:07 