Задать вопрос с известным ответом, например "2*2=4?"
У нас будет как минимум один ответ ДА(от рыцаря), но и не более двух(так как лжец не сможет ответить ДА, зато хитрец - вполне)
Пусть мы получили один ответ ДА, тогда человек, сказавший это, - рыцарь. Задаем ему вопрос "Это лжец?". Если получаем ответ ДА, то оставшийся человек(третий, не участвующий в последнем вопросе) - хитрец, если же ответ НЕТ, то оставшийся человек лжец.
Пусть мы получили два ответа ДА, один ответ НЕТ. Тогда совершенно точно человек, ответивший НЕТ, - лжец. Задаем ему вопрос "Это рыцарь?". Если получаем ответ ДА, то оставшийся человек(третий, не участвующий в последнем вопросе) - рыцарь, если же ответ НЕТ, то оставшийся человек лжец.