На первый вопрос "Ты Шакал?" Лев и Шакал заведомо скажут "нет". Поэтому узнать Жирафа и не узнать Попугая Ёж может только в одном случае: если Жираф ответит "Да", а Попугай "Нет". То же можно сказать и о втором вопросе "Ты Жираф?" – на него Лев и Жираф скажут "Нет" (Жираф думает, что его спрашивают, Шакал ли он), стало быть, Шакал распознается потому, что только он один и сказал "Да".
Поскольку ответа первого животного на третий вопрос хватило Ежу для определения всех (а до этого ответа информации не хватало), первым не стоял ни Жираф, ни Шакал (их ответы Ёжик мог предсказать заранее, и они ему ничего нового бы не сказали). Первым не мог стоять и Лев (он на третий вопрос ответил бы "нет"), то есть первым был Попугай, который повторил ответ четвёртого на предыдущий вопрос. Теперь понятно, что четвёртый – Шакал. У нас осталось две возможности расстановки:
(1): Попугай, Жираф, Лев, Шакал и (2): Попугай, Лев, Жираф, Шакал. Рассмотрим их.
Если бы имел место порядок (1), то Ёжик уже после первого опроса понял бы, что третий не Попугай, ведь он не повторил ответ второго.
А тогда после второго опроса все бы однозначно определились, и последний вопрос не понадобился бы. А вот в случае порядка (2) варианты Попугай, Лев, Жираф, Шакал и Лев, Попугай, Жираф, Шакал действительно не различались бы до последнего вопроса.
Ответ
Попугай, Лев, Жираф, Шакал.