Solving logic puzzle with exactly N werewolves

56 Views Asked by At

I am trying to solve a logic puzzle but I am not sure how to solve it, and I needed some help on this.

The puzzle is as follows:

Each of them is either a human or a werewolf.
A human will always tell the truth.
A werewolf will always lie.

A: Exactly one of us is a werewolf.
B: All three of us are werewolves.
C: Exactly two of us are werewolves.

My analysis:

  1. B is a werewolf since it will not say the truth if there were three werewolves (including itself). So, I know there is 1 or 2 werewolves and 1 or 2 humans.

  2. Let's hypothesis A is a human - We know B is a werewolf, but C's statement will contradict A's statement. So, I assume A is a werewolf, together with B, there are 2 werewolves and it matches A and B's lies - since there are two werewolves. And this also matches C's statement.

  3. C is a human and my answer will be C.

Is my analysis correct and is there a better way to derive the outcome?

2

There are 2 best solutions below

4
On BEST ANSWER

Your analysis is good. Here is another argument.

The three statements contradict each other, so at least two of them are false, and there are at least two werewolves.

If there are three werewolves, all three statements must be false - but one of the statements says that there are three werewolves, which would be true. So this case is impossible.

Therefore there are exactly two werewolves, and the speaker that says so is the only human.

1
On

Humans always tell the truth Werewolves always lie.

Each option is a statement identifying how many of them are liars in the group. meaning, that each statement is contradictory to one another, so only one of them can be true. There can only be 1 2 or 3 werewolves, but a werewolf cannot tell the truth. This immediately eliminates the possibility of 3 werewolves, because one of the statements HAS to be true, and each werewolf is a liar. The same goes for 3 humans. For a statement to be true, there must be at least a liar, but only a human can truthfully identify the number of liars.

Therefore only one statement can be true, and a human must be the one to tell you the truth. BECAUSE the statements contradict one another, it is impossible to have two humans, only one of the statements can be true at once, which would make one of them statements false.

There are 2 werewolves, and the human tells you that. the other 2 werewolves lie and tell you there are 1 and 3 werewolves.