1. Главная
  2. Библиотека
  3. Логика
  4. Вы решали в школе арифметические ребусы? Например, НАТА...
Разбор задачи

Вы решали в школе арифметические ребусы? Например, НАТАША + ТОНЯ = СЁСТРЫ? Или ДЕДКА + БАБКА + РЕПКА = СКАЗКА? В таких ребусах одинаковые буквы нужно заменить одинаковыми цифрами, а разные — разными, чтобы получилось корректное арифметическое выражение. В

  • Предмет: Логика
  • Автор: Кэмп
  • #Теория алгоритмов
  • #Логика программирования
Вы решали в школе арифметические ребусы? Например, НАТАША + ТОНЯ = СЁСТРЫ? Или ДЕДКА + БАБКА + РЕПКА = СКАЗКА? В таких ребусах одинаковые буквы нужно заменить одинаковыми цифрами, а разные — разными, чтобы получилось корректное арифметическое выражение. В

Условие:

Вы решали в школе арифметические ребусы? Например, НАТАША + ТОНЯ = СЁСТРЫ? Или ДЕДКА + БАБКА + РЕПКА = СКАЗКА? В таких ребусах одинаковые буквы нужно заменить одинаковыми цифрами, а разные — разными, чтобы получилось корректное арифметическое выражение. В этой задаче примеры решать не нужно, но условие похожее.

Два слова назовём похожими, если из одного можно получить другое, заменив одинаковые буквы одинаковыми, а разные — разными. Например, «abca» похоже на «yxzy», но не похоже на «pqqp».

Вам нужно поддерживать множество строк \nS\nS и обрабатывать два вида запросов:

+ \nt\nt: вставить строку \nt\nt в \nS\nS.
? \nt\nt: определить, есть ли в \nS\nS хотя бы одна строка, похожая на \nt\nt. Выведите YES, если такое слово есть, иначе выведите NO.

Решение:

Для решения данной задачи мы можем использовать хеш-таблицу для хранения строк и их "шаблонов". Шаблон будет представлять собой уникальное представление строки, которое позволяет определить, похожа ли одна строка на другую.

Вот шаги, которые мы будем выполнять:

  1. Определение шаблона: Для каждой строки мы будем генерировать шаблон, который будет представлять собой последовательность индексов, соответствующих уникальным символам строки. Например, для строки "abca" шаблон будет "0120", так как 'a' появляется на позициях 0 и 2, а 'b' на позиции 1 и 'c' на позиции

  2. Хранение строк в хеш-таблице...

Внутри — полный разбор, аргументация, алгоритм решения, частые ошибки и как отвечать на каверзные вопросы препода, если спросит

Попробуй решить по шагам

Попробуй один шаг и продолжи в режиме обучения или посмотри готовое решение

Какой подход используется для определения похожести двух слов в задаче?

Что нужно знать по теме:

Что нужно знать по теме

Алгоритм решения

Топ 3 ошибок

Что спросит препод