Мистер Фокс продолжает общаться с инопланетянами, но недавно он понял, что ни все сообщения они могут декодировать. Тогда он изучил теорему Фано и для кодирования некоторой последовательности, состоящей из букв A, B, C, D решил использовать неравномерный двоичный код, позволяющий однозначно декодировать двоичную последовательность символов, состоящих из этих букв. Для букв он определил коды таким образом: А мистеру Фоксу найти минимальное кодовое слово для буквы D. В ответ запишите последовательность чисел без точки.
Для кодирования с помощью неравномерного двоичного кода, мы будем использовать теорему Фано. Согласно этой теореме, чем более вероятен символ, тем короче будет его кодовое слово.
Итак, начнем с присвоения кодовых слов каждой из букв. Давайте предположим, что вероятности появления букв A, B, C, D равны p(A), p(B), p(C), p(D) соответственно.
1. Найдем вероятности появления букв:
- Для буквы A: p(A)
- Для буквы B: p(B)
- Для буквы C: p(C)
- Для буквы D: p(D)
2. Ранжируем вероятности по убыванию и кодируем каждую букву:
- Буква с самой высокой вероятностью будет иметь кодовое слово "0".
- Буква с более низкой вероятностью будет иметь кодовое слово, полученное путем добавления "1" к кодовому слову буквы с более высокой вероятностью.
- Продолжаем этот процесс для оставшихся букв, добавляя "0" или "1" к кодовому слову предыдущей буквы в зависимости от вероятности.
Пример кодовых слов для букв A, B, C, D:
- Для буквы A: "00"
- Для буквы B: "01"
- Для буквы C: "10"
- Для буквы D: "11"
Теперь, чтобы найти минимальное кодовое слово для буквы D, мы видим, что для нее это "11". Таким образом, ответом на задачу является последовательность чисел "11".