У вас есть строка из n символов латинского алфавита нижнего регистра. Затем у вас есть q строк длины n, и для каждой
У вас есть строка из n символов латинского алфавита нижнего регистра. Затем у вас есть q строк длины n, и для каждой строки i вы должны ответить, является ли она анаграммой исходной строки. Введите число n (1≤n≤103) и q (1≤q≤103). Затем введите исходную строку длиной n. Затем введите q строк длиной n - запросы. Выведите q ответов "Да" или "Нет".
16.12.2023 04:25
Описание: Анаграмма - это слово или фраза, образованная путем перестановки букв другого слова или фразы. Для решения данной задачи, мы можем использовать следующий алгоритм:
1. Получить исходную строку и строку запроса.
2. Преобразовать каждую строку в массив символов.
3. Отсортировать оба массива символов по возрастанию.
4. Сравнить отсортированные массивы символов.
5. Если массивы символов равны, тогда строки являются анаграммами и мы выводим "Да", иначе выводим "Нет".
Пример использования:
Исходная строка: "listen"
Запрос 1: "silent" (анаграмма)
Запрос 2: "hello" (не анаграмма)
Результат:
Да
Нет
Совет: Для лучшего понимания и решения данной задачи, рекомендуется изучить алгоритм сортировки массива символов и понятие анаграмм.
Дополнительное упражнение: Если даны две строки, напишите программу, которая определяет, являются ли они анаграммами друг друга. (Примечание: игнорируйте пробелы и регистр символов)