Мистер Фокс узнал новый алгоритм шифрования: нужно взять строку, которую хочешь...

0 голосов
64 просмотров

Мистер Фокс узнал новый алгоритм шифрования: нужно взять строку, которую хочешь зашифровать, вставить между любыми двумя буквами две произвольные одинаковые буквы, с получившейся строкой повторить ту же операцию и так далее, пока не надоест.
Например, строку ФОКС можно зашифровать так: ФАЗЗАОЯЯКВВС.
Мистер Фокс зашифровал название своего любимого дикого животного и предлагает вам расшифровать его: ЛКУУКЛЛЕЕГИТТИГЕТТМЛЛУРМЗХЙФФЙССХЗМРМЧЯЗЗЯХХЧЪФЙЙИННИФЪМР.
В качестве ответа укажите название любимого животного мистера Фокса, записанное заглавными буквами, например, ЛЕВ.


Информатика (82 баллов) | 64 просмотров
Дан 1 ответ
0 голосов
Правильный ответ

Поочередно удаляем повторяющиеся буквы
ЛКУУКЛЛЕЕГИТТИГЕТТМЛЛУРМЗХЙФФЙССХЗМРМЧЯЗЗЯХХЧЪФЙЙИННИФЪМР
ЛККГИИГЕМУРМЗХЙЙХЗМРМЧЯЯЧЪФИИФЪМР
ЛГГЕМУРМЗХХЗМРМЧЧЪФФЪМР
ЛЕМУРМЗЗМРМЪЪМР
ЛЕМУРММРММР
ЛЕМУРРР
ЛЕМУР
ЛЕМУР

# Код на ruby 2.2.3p173
def zadanie(s)
    puts "Поочередно удаляем повторяющиеся буквы" + "\n"
    puts s  + "\n"

    s1 = s
    begin
        s = s1
        s1 = s.gsub(/(.)\1/, "")
        puts s1 + "\n"
    end while s1 != s

    return s
end

(55.0k баллов)