Education 1.1 Help

Задачи

Задача 1

Напишите программу, которая считывает слова, слово «стоп» — сигнал остановки (оно не должно принимать участие в анализе). Из введённых слов нужно выбрать самое длинное и самое короткое (гарантируется, что все они имеют разную длину) и проверить, есть ли все буквы короткого слова в длинном, при этом количество повторений букв не учитывается. Вывести «ДА» или «НЕТ» в зависимости от этого.

Формат ввода

Слова разной длины, из которых нужно выбрать кратчайшее и длиннейшее. После этих слов следует слово «стоп».

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

ДА или НЕТ

Пример 1

Ввод

грот вигвам гаррота стоп

Вывод

ДА

Пример 2

Ввод

чаепитие чашка печенье стоп

Вывод

НЕТ

Задача 2

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

Формат ввода

Две строки.

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

Два целых числа через пробел — количество быков и коров.

Пример

Ввод

питон пилот

Вывод

3 1

Задача 3

Во многих интернет-сервисах при регистрации нужно указывать желаемое имя пользователя, причём в имени разрешается использовать только латинские буквы, цифры и символ «_». Напишите программу, которая проверяет, подходит ли строка для того, чтобы быть именем пользователя в таком сервисе.

Формат ввода

Вводится одна строка — предполагаемое имя пользователя.

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

Выводится одна строка: если введенная строка состоит только из маленьких латинских букв, цифр и символа «_», то выводится «OK» (латиницей); иначе выводится: «Неверный символ: », после чего следует первый неподходящий символ из введенной строки.

Пример

Ввод

m&m's

Вывод

Неверный символ: &

Задача 4

Напишите программу, которая выводит обозначения клеток шахматной доски. Клетки нумеруются (заглавными) латинскими буквами слева направо и натуральными числами снизу вверх, после каждого обозначения клетки следует пробел. Доска квадратная, размер вводится с клавиатуры и не превышает 9.

Формат ввода

Натуральное число, не превышающее 9 — размер доски.

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

Шахматная доска в формате, описанном в условии и показанном в примере.

Пример

Ввод

4

Вывод

A4 B4 C4 D4 A3 B3 C3 D3 A2 B2 C2 D2 A1 B1 C1 D1

Задача 5

Формат ввода

Сначала вводится натуральное число N — количество полезных советов. На следующих N строках вводятся полезные советы. Гарантируется, что длина каждого — не менее 3 символов.

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

Нужно вывести те же советы в том же порядке, однако у тех из них, что начинаются со слова «не» (которое также может быть записано как «Не») и пробела, выводить это начальное «не» и пробел не нужно.

Пример

Ввод

3 Мой руки перед едой! Не суй пальцы в розетку! Берегись автомобиля!

Вывод

Мой руки перед едой! суй пальцы в розетку! Берегись автомобиля!

Задача 6

Напишите программу, которая укорачивает заголовки новостей, чтобы их анонсы поместились в ленте событий на сайте новостного агентства. Если длина заголовка превышает максимальную допустимую длину анонса, следует укоротить его и добавить в конце многоточие (в виде трёх точек), чтобы получившийся анонс имел ровно максимальную допустимую длину.

Формат ввода

На первой строке вводится натуральное число — максимальная допустимая длина анонса. На второй строке вводится натуральное число N — количество заголовков. Далее вводится N заголовков, каждый на отдельной строке. Гарантируется, что заголовки не короче 4 символов.

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

Для каждого заголовка выводится соответствующий анонс: если длина заголовка не превышает максимальную, то он и есть анонс, иначе его следует укоротить согласно условию.

Пример

Ввод

25 3 Начался саммит по глобальному потеплению Завтра Новый год! Python и Java конкурируют за звание самого популярного языка

Вывод

Начался саммит по глоб... Завтра Новый год! Python и Java конкурир...

Задача 7

Найдите, в каких строках из введённых и в каком месте упоминается кот.

Формат ввода

На первой строке вводится натуральное число N — количество строк. Далее следуют N строк.

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

Для каждой строки, в которой есть сочетание символов «кот», нужно вывести (в порядке появления таких строк) номер этой строки (нумерация начинается с единицы) и номер символа, с которого начинается первое вхождение этой подстроки (нумерация символов также с единицы).

Пример

Ввод

3 локоть молоко пёс и кот

Вывод

1 3 3 7

Задача 8

Второстепенные герои пьесы Шекспира «Гамлет» Розенкранц и Гильденстерн появляются и в пьесе Тома Стоппарда.

Они подбрасывают монетку, и Гильденстерна интересует, какое максимальное количество орлов подряд может выпасть. (Розенкранца это не интересует.)

Вводится одна строка, каждая буква которой представляет собой результат одного броска монетки — «о» обозначает орла, «р» обозначает решку. Программа должна вывести максимальное количество орлов, выпавших подряд.

Формат ввода

Одна строка, состоящая из букв «о» и «р» — результаты бросков.

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

Одно целое число — максимальное число орлов, выпавших подряд.

Пример

Ввод

рооррооор

Вывод

3

Задача 9

Напишите программу, которая проводит первичную обработку неких сложных и глючных логов. Нужно удалить сочетание «%%» в начале некоторых строк и удалить строки, начинающиеся с «####».

Формат ввода

На первой строке вводится натуральное число N — количество строк, подлежащих обработке. Далее вводятся сами строки, N штук.

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

Нужно вывести те же строки в том же порядке, однако если строка начинается с символов «%%», то их выводить не следует, а если строка начинается с сочетания символов «####», то её нужно вообще пропустить.

Пример

Ввод

3 SVO TRS 29481292 %%LJPZ DME 11113283675 ####&%^^^^

Вывод

SVO TRS 29481292 LJPZ DME 11113283675
Last modified: 05 November 2024