I love this sort of logic puzzle:

http://blogs.msdn.com/AdiOltean/archive/2005/03/28/403080.aspx