C knows the answer by deducing D is not yelling out the answer. : Z" S# |, d* G c Y5 HThat means D is not sure the answer by seeing one white and one black. Q' u0 R) r3 J( p( _( a) P; a/ S
C saw B is wearing the white, hence he is wearing the black
C, because he saw B's hat is white and he knows D can see the color of B's and his hat. If B and his hat has the same color, D would speak out. But D kept silent, so C knows that his hat's color must be different.