В
Все
М
Математика
А
Английский язык
Х
Химия
Э
Экономика
П
Право
И
Информатика
У
Українська мова
Қ
Қазақ тiлi
О
ОБЖ
Н
Немецкий язык
Б
Беларуская мова
У
Українська література
М
Музыка
П
Психология
А
Алгебра
Л
Литература
Б
Биология
М
МХК
О
Окружающий мир
О
Обществознание
И
История
Г
Геометрия
Ф
Французский язык
Ф
Физика
Д
Другие предметы
Р
Русский язык
Г
География
Keeping
Keeping
09.02.2023 12:10 •  Информатика

Задача №1743. Шифровка Петя и Вася обменивались шифрованными сообщениями. Они брали некоторое слово, записанное маленькими латинскими буквами и переставляли в нем буквы. Антон перехватил одну из шифровок. У него есть несколько гипотез о том, что могло содержаться в шифровке.

Выведите те слова из списка Антона, шифром которых может являться перехваченное сообщение.

Входные данные
В первой строке вводится текст перехваченного сообщения.

Во второй строке записано число N — количество слов – гипотез Антона (1≤N≤100). В следующих N строках записаны сами слова.

Каждое слово (как перехваченная шифровка, так и слова – гипотезы Антона) состоит только из маленьких латинских букв и имеет длину не более 200 символов.

Выходные данные
Выведите те слова – гипотезы, в результате шифрования которых могло получиться перехваченное сообщение. Слова должны быть выведены в том же порядке, в каком они вводятся.

Если ни одно слово не подходит, не нужно выводить ничего.

Примеры
входные данные
aamm
4
mama
papa
amam
am
выходные данные
mama
amam
входные данные
qwerty
1
qwerty
выходные данные
qwerty
Язык программирования pascal или python

Показать ответ
Ответ:
adelina2001levchuk
adelina2001levchuk
14.02.2021 18:07

Алгоритм:

1) Считываем входные данные. Перехваченную шифровку записываем в переменную encoded, количество гипотез Антона в переменную N, а сами гипотезы в переменную assumptions.

2) Сортируем буквы в перехваченной шифровке, сохраняем получившийся список в переменную encoded_sorted.

3) Проходимся циклом по всем гипотезам, во время каждой итерации сортируем буквы в гипотезе и сверяем с encoded_sorted. В случае если равно, гипотеза верна => выводим.

Код на Python:

encoded = input()

N = int(input())

assumptions = [input() for _ in range(N)]

encoded_sorted = sorted(encoded)

for assumption in assumptions:

   if sorted(assumption) == encoded_sorted:

       print(assumption)

       

0,0(0 оценок)
Популярные вопросы: Информатика
Полный доступ
Позволит учиться лучше и быстрее. Неограниченный доступ к базе и ответам от экспертов и ai-bota Оформи подписку
logo
Начни делиться знаниями
Вход Регистрация
Что ты хочешь узнать?
Спроси ai-бота