Option (B) should be the correct answer, that is A is a Knave & B is a Knight.
A must be either a Knight or a Knave.
Suppose A is a Knight, it means that the statement "We are both Knaves." must be true.
This is contradicting our assumption.
So the assumption that "A is a Knight" is not logically satisfiable simultaneously with the statement he made, which implies that A must be a Knave.
Now since A is a Knave, the statement made by him : "We are both Knaves." must be false.
The statement "We are both Knaves." will be false in any one of the following 3 conditions :
- A is a Knight, B is a Knave.
- A is a Knave, B is a Knight.
- A is a Knight, B is a Knight.
Bus since we have already deduced that A is a Knave so in order to make the statement "We are both Knaves." false, we are only left with condition 2.
So B must be a Knight.