Andy’s birthday party has just been moved up by a week. All the toys in Andy’s room are worried about being replaced by fancy new toys. Sheriff Woody, Andy’s favourite toy, and the others are waiting for the party to get over and meet the new toys.

At the party, Andy’s mother hosts a game. Since not everyone got Andy a present, she removes the name tags from all the gifts, so all 121 of Andy’s friends either lie or tell the truth about getting Andy a gift. The game consists of each of the 122 children (121 friends, plus Andy) shaking hands with each other child. After hands are shaken, Andy’s mom asks each person "How many truth-tellers did you shake hands with?" Each child gave a different answer ranging from 0 to 121. Andy must answer the number of liars in the party to get a surprise gift. What should Andy's answer be?

  • $\begingroup$ Hello & Welcome, New Contributor ! This seems to be a nice Puzzle; It has already got an answer which seems somewhat right. Couple of Doubts : Does Andy know the total number of Presents received ? Do the friends know who got Presents and who did not ? Do the friends know who lied and who did not ? Is Andy aware of the Individual answers ? Do the liars who lied about the Presents also lie about the number of handshakes ? Suggestion to edit this Puzzle to add clarity. $\endgroup$
    – Prem
    Sep 11 at 9:06
  • 4
    $\begingroup$ Does this answer your question? Island of Liars $\endgroup$ Sep 11 at 17:48
  • $\begingroup$ Can Paul also qualify as a truth teller or liar (despite not being asked the first question)? And is Paul the last person to be asked the second one? $\endgroup$
    – Nautilus
    Sep 11 at 18:53

If there are $x$ truth tellers, the truth would be the liars saying $x$ and the truth tellers saying $x-1$. In practice, there would be $x$ people saying $x-1$ with the rest saying anything but $x$. Since no number is said more than once, $x<2$.

Either there's only one truth teller, who said 0, and the remaining 120 liars said different numbers but no 1. They can't say 1, because that's the truth, and they can't say 0, because the truth teller already said that. They say all the numbers from 2 to 121.

If there are no truth tellers, everyone will say anything but 0 (from 1 to 121).

Andy's mom talks to everyone. If someone has answered 0, there are 120 liars. Otherwise, all are liars.


The question contains a lot of distraction about gifts, but doesn't ask about those at all.

If there are n truthtellers, each of them will truthfully answer n-1 when they are asked how many truth tellers they shook hands with. Yet each child gave a different answer. If n=3, you would expect 3 answers of "2", plus possibly more from liars (who shook with 3 but will never say so.) We don't get any repetitions, so n is not 3. If n=2, you would expect 2 answers of "1" so it is similarly ruled out.

Now, if n=1 you would expect 1 answer of "0" -- but none of the liars could say 1. Assuming she didn't ask Andy, this can be ok - there are 122 numbers 0-121, so one number can be omitted. Note if n=0, none of the liars could say 0 yet somebody does.

Therefore, if "Andy’s mom asks each person" actually means "Andy’s mom asks each guest" - not Andy - then

there is 1 truthteller, 120 liars.


Not the answer you're looking for? Browse other questions tagged or ask your own question.