Так как рыцари всегда говорят правду, а лжецы всегда лгут, то только гости могут назвать себя лжецами. Итак, группа, назвавшаяся лжецами, - это гости, их 30 человек, и они становятся лжецами.
Далее, только лжецы и гости могут называть себя гостями. Поэтому группа, так себя назвавшая, состоит из 15 лжецов и 15 гостей. В этом случае гости остаются гостями.
Это значит, что группа, назвавшая себя рыцарями, состоит из людей всех типов, по 10 человек каждого, и гости из этой группы становятся рыцарями.
В итоге оказывается:
15 гостей (те 15, которые назвали себя правильно),
20 рыцарей (10 настоящих и 10 из числа гостей) и
55 лжецов (10 - назвавших себя рыцарями, 15 - представившихся госттями и 30 гостей, назвавшихся лжецами).