Новая Школа - онлайн-школа подготовки к ЕГЭ
Задача Задача №3540369
А
Аноним
27 декабря 2025 15:29 · публичный вопрос
А
Аноним

Решить на Python: Секретный шифр Вы подозреваете, что роботы что-то замышляют. Придётся прочесть их секретные сообщения. Шифр они придумали невероятно сложный: буква А заменяется…

Запрос пользователя

Решить на Python: Секретный шифр Вы подозреваете, что роботы что-то замышляют. Придётся прочесть их секретные сообщения. Шифр они придумали невероятно сложный: буква А заменяется на 🍉, буква Б — на 🍌 и так далее. «Несъедобные» буквы (например, Е) не заменяются. Список «съедобных» букв: АБВГДКЛМОПСТЯ. И их замены: 🍉🍌🍒🍐🍈🍓🍋🥕🥒🍅🥬🎃🍎. Расшифруйте и выведите все сообщения.

Ответ нейросети
27 декабря 2025 15:29

Ниже подробное решение на Python для данного шифра. Мы будем заменять эмодзи обратно на соответствующие русские буквы (АБВГДКЛМОПСТЯ). Все остальные символы остаются без изменений.

Как работает подход

  • Задаём словарь, где ключи — эмодзи, значения — соответствующие буквы.
  • Читaем входные строки (многострочное сообщение до конца ввода).
  • Для каждой строки проходим по каждому символу и заменяем его по словарю, если он встречается там как ключ; иначе оставляем символ без изменений.
  • Выводим декодированную строку.

Код (Python 3)

import sys

# Словарь декодирования: emoji -> русская буква
decode = {
    '🍉': 'А',
    '🍌': 'Б',
    '🍒': 'В',
    '🍐': 'Г',
    '🍈': 'Д',
    '🍓': 'К',
    '🍋': 'Л',
    '🥕': 'М',
    '🥒': 'О',
    '🍅': 'П',
    '🥬': 'С',
    '🎃': 'Т',
    '🍎': 'Я',
}

def decode_line(line: str) -> str:
    # Замена каждого символа, если он есть в словаре
    return ''.join(decode.get(ch, ch) for ch in line)

def main():
    # Читаем всё до конца ввода (многострочное сообщение)
    lines = sys.stdin.read().splitlines()
    for line in lines:
        print(decode_line(line))

if __name__ == "__main__":
    main()

Пример

  • Ввод: 🍉🍌Е🍒 ДОХР
  • Вывод: АБЕВ ДОХР

Пояснения и варианты

  • Если столкнётесь с другими символами или пробелами, они остаются неизменными.
  • Этот код рассчитан на вход в формате текстовых строк, где каждая строка — отдельное сообщение. Он корректно обрабатывает любой набор строк до конца ввода.
  • Убедитесь, что запускаете на Python 3.x, так как обработка Unicode важна для эмодзи.