Для каждого результата работы алгоритма мы можем восстановить исходную цепочку, следуя алгоритму в обратном порядке.
НПТБЛГБ
Длина результата: 8 (чётная). Значит, буква A была добавлена в середину. Удалим букву A (которая, учитывая шифрование, была заменена на Б):
НПТБЛГБ с удалённой А:Разделим на две части по 4 символа (так как A была добавлена в середину):
НПТБ | ЛГБИсходная цепочка: НПТБЛГ (перед заменой символов)
Заменим каждую букву на предыдущую в алфавите:
Н -> М
П -> О
Т -> С
Б -> А
Л -> К
Г -> ФПолучаем: МОСАKФ (исходная цепочка: СТАРТ)
ВРЁУЁСВФСД
Длина результата: 12 (чётная). Значит, буква A была добавлена в середину. Удалим букву A (заменилa В на Г):
ВРЁУЁСВФСД без А: Значит было ВРЁУЁСВФС.Разделим на две части по 6 символов:
ВРЁУЁ | СВФСИсходная цепочка: ВРЁУЁСВФ.
Заменим каждую букву на предыдущую в алфавите:
В -> А
Р -> П
Ё -> Е
У -> Т
Ё -> Е
С -> Р
В -> У
Ф -> ЕПолучаем: АПТЕРУЕ. (исходная: ХРЯМЗИК)
ВАДПЕБ
Длина результата: 6 (чётная). Значит, буква A была добавлена в середину. Удалим букву A:
ВАДПЕБ без А: ВДПЕБ.Разделим на две части по 3 символа:
ВД | ПЕБИсходная цепочка: ВДПЕБ.
Заменим каждую букву на предыдущую в алфавите:
В -> А
Д -> Г
П -> О
Е -> Д
Б -> АПолучаем: АГОДА. (исходная цепочка: МОЛОКО)
ВРБСБЩЯУ
Длина результата: 8 (чётная). Значит, буква A была добавлена в середину. Удаляем букву А. Всю цепочку до неё:
ВРБСБЩЯУ без А: ВРБСБЩ.Разделим на две части по 4 символа:
ВРБС | БЩИсходная цепочка: ВРБСБЩ.
Заменим каждую букву на предыдущую в алфавите:
В -> А
Р -> П
Б -> А
С -> Р
Б -> А
Щ -> ШПолучаем: АПАРА (исходная цепочка: КОМПЬЮТЕР).
Таким образом, исходные цепочки:
- СТАРТ
- ХРЯМЗИК
- МОЛОКО
- КОМПЬЮТЕР