Подборка задач с решениями - 15

  • Категория: Python
  • Дата публикации: 2022-01-09
  • Опубликовано на сайте: Stepik

Задача 1:

На вход программе подается строка, содержащая строки-идентификаторы. Напишите программу, которая исправляет их так, чтобы в результирующей строке не было дубликатов. Для этого необходимо прибавлять к повторяющимся идентификаторам постфикс _n, где n – количество раз, сколько такой идентификатор уже встречался.

Формат входных данных

На вход программе подается строка текста, содержащая строки-идентификаторы, разделенные символом пробела.

Формат выходных данных

Программа должна вывести исправленную строку, не содержащую дубликатов сохранив при этом исходный порядок.

Решение:

Все решения теперь можно найти в сообществе Как войти в IT

Задача 2:

Программисты, как вы уже знаете, постоянно учатся, а в общении между собой используют весьма специфический язык. Чтобы систематизировать ваш пополняющийся профессиональный лексикон, мы придумали эту задачу. Напишите программу создания небольшого словаря сленговых программерских выражений, чтобы она потом по запросу возвращала значения из этого словаря.

Формат входных данных

В первой строке задано одно целое число nnn — количество слов в словаре. В следующих nnn строках записаны слова и их определения, разделенные двоеточием и символом пробела. В следующей строке записано целое число m — количество поисковых слов, чье определение нужно вывести. В следующих m строках записаны сами слова, по одному на строке.

Формат выходных данных

Для каждого слова, независимо от регистра символов, если оно присутствует в словаре, необходимо вывести его определение. Если слова в словаре нет, программа должна вывести "Не найдено", без кавычек.

Решение:

Все решения теперь можно найти в сообществе Как войти в IT

Задача 3:

Анаграмма – слово (словосочетание), образованное путём перестановки букв, составляющих другое слово (или словосочетание). Например, английские слова evil и live – это анаграммы.

На вход программе подаются два слова. Напишите программу, которая определяет, являются ли они анаграммами.

Решение:

Все решения теперь можно найти в сообществе Как войти в IT

Задача 4:

На вход программе подаются два предложения. Напишите программу, которая определяет, являются они анаграммами или нет. Ваша программа должна игнорировать регистр символов, знаки препинания и пробелы.

Решение:

Все решения теперь можно найти в сообществе Как войти в IT

Задача 5:

Вам дан словарь, состоящий из пар слов-синонимов. Повторяющихся слов в словаре нет. Напишите программу, которая для одного данного слова определяет его синоним.

Формат входных данных

На вход программе подается количество пар синонимов n. Далее следует n строк, каждая строка содержит два слова-синонима. После этого следует одно слово, синоним которого надо найти.

Формат выходных данных

Программа должна вывести одно слово, синоним введенного.

Решение:

Все решения теперь можно найти в сообществе Как войти в IT

Задача 6:

На вход программе подается список стран и городов каждой страны. Затем даны названия городов. Напишите программу, которая для каждого города выводит, в какой стране он находится.

Решение:

Все решения теперь можно найти в сообществе Как войти в IT

Задача 7:

Тимур записал телефоны всех своих друзей, чтобы автоматизировать поиск нужного номера.

У каждого из друзей Тимура может быть один или более телефонных номеров. Напишите программу, которая поможет Тимуру находить все номера определённого друга.

Формат входных данных

В первой строке задано одно целое число nnn — количество номеров телефонов, информацию о которых Тимур сохранил в телефонной книге. В следующих nnn строках заданы телефоны и имена их владельцев через пробел. В следующей строке записано целое число m — количество поисковых запросов от Тимура. В следующих m строках записаны сами запросы, по одному на строке. Каждый запрос — это имя друга, чьи телефоны Тимур хочет найти.

Формат выходных данных

Для каждого запроса от Тимура выведите в отдельной строке все телефоны, принадлежащие человеку с этим именем (независимо от регистра имени). Если в телефонной книге нет телефонов человека с таким именем, выведите в соответствующей строке «абонент не найден» (без кавычек).

Решение:

Все решения теперь можно найти в сообществе Как войти в IT

Задача 8:

Напишите программу для расшифровки секретного слова методом частотного анализа.

Формат входных данных

В первой строке задано зашифрованное слово. Во второй строке задано одно целое число n – количество букв в словаре. В следующих nnn строках записано, сколько раз конкретная буква алфавита встречается в этом слове – <буква>: <частота>.

Формат выходных данных

Программа должна вывести дешифрованное слово.

Примечание. Гарантируется, что частоты букв не повторяются.

Решение:

Все решения теперь можно найти в сообществе Как войти в IT