Задачи
Задача 1
Напишите программу, которая считывает слова, слово «стоп» — сигнал остановки (оно не должно принимать участие в анализе). Из введённых слов нужно выбрать самое длинное и самое короткое (гарантируется, что все они имеют разную длину) и проверить, есть ли все буквы короткого слова в длинном, при этом количество повторений букв не учитывается. Вывести «ДА» или «НЕТ» в зависимости от этого.
Формат ввода
Слова разной длины, из которых нужно выбрать кратчайшее и длиннейшее. После этих слов следует слово «стоп».
Формат вывода
ДА или НЕТ
Пример 1
Ввод
Вывод
Пример 2
Ввод
Вывод
Задача 2
Напишите программу, обрабатывающую один раунд игры «Быки и коровы». Пользователь вводит две строки. Гарантируется, что это две строки одинаковой длины и что все символы в каждой из них разные. Необходимо вывести отдельно количество быков — символов, которые есть в обеих строках и стоят на одном и том же месте, и количество коров — символов, которые есть в обеих строках, но на разных местах.
Формат ввода
Две строки.
Формат вывода
Два целых числа через пробел — количество быков и коров.
Пример
Ввод
Вывод
Задача 3
Во многих интернет-сервисах при регистрации нужно указывать желаемое имя пользователя, причём в имени разрешается использовать только латинские буквы, цифры и символ «_». Напишите программу, которая проверяет, подходит ли строка для того, чтобы быть именем пользователя в таком сервисе.
Формат ввода
Вводится одна строка — предполагаемое имя пользователя.
Формат вывода
Выводится одна строка: если введенная строка состоит только из маленьких латинских букв, цифр и символа «_», то выводится «OK» (латиницей); иначе выводится: «Неверный символ: », после чего следует первый неподходящий символ из введенной строки.
Пример
Ввод
Вывод
Задача 4
Напишите программу, которая выводит обозначения клеток шахматной доски. Клетки нумеруются (заглавными) латинскими буквами слева направо и натуральными числами снизу вверх, после каждого обозначения клетки следует пробел. Доска квадратная, размер вводится с клавиатуры и не превышает 9.
Формат ввода
Натуральное число, не превышающее 9 — размер доски.
Формат вывода
Шахматная доска в формате, описанном в условии и показанном в примере.
Пример
Ввод
Вывод
Задача 5
Формат ввода
Сначала вводится натуральное число N — количество полезных советов. На следующих N строках вводятся полезные советы. Гарантируется, что длина каждого — не менее 3 символов.
Формат вывода
Нужно вывести те же советы в том же порядке, однако у тех из них, что начинаются со слова «не» (которое также может быть записано как «Не») и пробела, выводить это начальное «не» и пробел не нужно.
Пример
Ввод
Вывод
Задача 6
Напишите программу, которая укорачивает заголовки новостей, чтобы их анонсы поместились в ленте событий на сайте новостного агентства. Если длина заголовка превышает максимальную допустимую длину анонса, следует укоротить его и добавить в конце многоточие (в виде трёх точек), чтобы получившийся анонс имел ровно максимальную допустимую длину.
Формат ввода
На первой строке вводится натуральное число — максимальная допустимая длина анонса. На второй строке вводится натуральное число N — количество заголовков. Далее вводится N заголовков, каждый на отдельной строке. Гарантируется, что заголовки не короче 4 символов.
Формат вывода
Для каждого заголовка выводится соответствующий анонс: если длина заголовка не превышает максимальную, то он и есть анонс, иначе его следует укоротить согласно условию.
Пример
Ввод
Вывод
Задача 7
Найдите, в каких строках из введённых и в каком месте упоминается кот.
Формат ввода
На первой строке вводится натуральное число N — количество строк. Далее следуют N строк.
Формат вывода
Для каждой строки, в которой есть сочетание символов «кот», нужно вывести (в порядке появления таких строк) номер этой строки (нумерация начинается с единицы) и номер символа, с которого начинается первое вхождение этой подстроки (нумерация символов также с единицы).
Пример
Ввод
Вывод
Задача 8
Второстепенные герои пьесы Шекспира «Гамлет» Розенкранц и Гильденстерн появляются и в пьесе Тома Стоппарда.
Они подбрасывают монетку, и Гильденстерна интересует, какое максимальное количество орлов подряд может выпасть. (Розенкранца это не интересует.)
Вводится одна строка, каждая буква которой представляет собой результат одного броска монетки — «о» обозначает орла, «р» обозначает решку. Программа должна вывести максимальное количество орлов, выпавших подряд.
Формат ввода
Одна строка, состоящая из букв «о» и «р» — результаты бросков.
Формат вывода
Одно целое число — максимальное число орлов, выпавших подряд.
Пример
Ввод
Вывод
Задача 9
Напишите программу, которая проводит первичную обработку неких сложных и глючных логов. Нужно удалить сочетание «%%» в начале некоторых строк и удалить строки, начинающиеся с «####».
Формат ввода
На первой строке вводится натуральное число N — количество строк, подлежащих обработке. Далее вводятся сами строки, N штук.
Формат вывода
Нужно вывести те же строки в том же порядке, однако если строка начинается с символов «%%», то их выводить не следует, а если строка начинается с сочетания символов «####», то её нужно вообще пропустить.
Пример
Ввод
Вывод