And, now that I finally have a little more time to post, you are correct with #1.
There are two main possibilities:
- A is a knight. Then he told the truth, and B and C are of the same type.
- if B and C are both knaves, then A and B are of different types, so C, being a knave, will lie and say "Yes" to the question.
- if B and C are both knights, then A and B of of the same type, so C, being a knight, will truthfully answer "Yes" to the question.
- A is a knave. Then he lied, and B and C are of different types.
- if B is a knight and C is a knave, then A and B are of different types, so C, being a knave, will lie and say "Yes" to the question.
- if B is a knave and C is a knight, then A and B are of the same type, so C, being a knight, will truthfully answer "Yes" to the question.
So regardless of what A, B, and C are, C MUST answer "Yes" to the question.
You are correct for as far as you went with #2; A must have answered "No." I'll presume that you went ahead and worked the rest out, thus:
- If A answered "Yes", then either he is a knight, they're both knights, or they're both knaves. You have no way to determine which. But you were able to determine, so A must not have answered "Yes."
- So A answered "No." This means that he claimed that they're both knaves. This must be a lie, since knaves won't truthfully claim to be knaves. Since A lied, he is a knave. Since they're not both knaves, B must be a knight.