Разберём утверждения богатырей:
Известно, что правду сказал только один богатырь.
Случай 1: Правду сказал Илья Муромец.
Тогда утверждение ИМ верно: Змея убил Добрыня Никитич (ДН).
Это означает, что утверждения ДН и АП — ложь.
Утверждение ДН: «Змея убил Алёша Попович» — ложь. Это согласуется с тем, что Змея убил ДН.
Утверждение АП: «Я убил Змея» (т.е. АП убил Змея) — ложь. Это также согласуется с тем, что Змея убил ДН.
В этом случае все условия выполняются: Илья сказал правду, а Добрыня и Алёша слукавили. Убил Змея Добрыня Никитич.
Случай 2: Правду сказал Добрыня Никитич.
Тогда утверждение ДН верно: Змея убил Алёша Попович (АП).
Это означает, что утверждения ИМ и АП — ложь.
Утверждение ИМ: «Змея убил Добрыня Никитич» — ложь. Это согласуется с тем, что Змея убил АП.
Утверждение АП: «Я убил Змея» (т.е. АП убил Змея) — ложь. Но мы предположили, что Змея убил АП, значит, его утверждение должно быть правдой. Противоречие.
Этот случай невозможен.
Случай 3: Правду сказал Алёша Попович.
Тогда утверждение АП верно: Алёша Попович убил Змея (АП).
Это означает, что утверждения ИМ и ДН — ложь.
Утверждение ИМ: «Змея убил Добрыня Никитич» — ложь. Это согласуется с тем, что Змея убил АП.
Утверждение ДН: «Змея убил Алёша Попович» — ложь. Но мы предположили, что Змея убил АП, значит, утверждение ДН должно быть правдой. Противоречие.
Этот случай также невозможен.
Единственный случай, когда условия задачи выполняются, это когда правду сказал Илья Муромец.
Ответ: Змея убил Добрыня Никитич.