Олимпиадные задания
Советы участнику олимпиады
- Внимательно прочитайте условия задач и определите порядок, в котором будете их решать (лучше начинать с легких задач, которые, как правило, размещены в начале).
- Если условие задачи можно понять по разному, то не выбирайте удобную для себя трактовку.
- Не зацикливайтесь на одной задаче. Если нет идеи решения, то задачу лучше (хотя бы на время) отложить.
- Решив задачу, сразу оформляйте решение. Это поможет проверить его правильность и освободит внимание для других задач.
- Каждый, даже очевидный, шаг решения нужно записывать.
Задача № 1 «Птицы» (20 баллов)
К кормушке прилетели воробьи, синицы, снегири и вороны. Мальчик посчитал количество птиц каждого вида. Напишите программу, которая запрашивает четыре числа – количество птиц каждого вида, а затем сообщает общее число птиц у кормушки, дописывая к числовому значению слово «птица» в правильной форме. Например, 33 птицы, 11 птиц, 21 птица.
Входные данные: 4 натуральных числа А,В,C,D ( А,В,С,D <=100).
Выходные данные: сумма переменных А, В, C, D и слово «птица» с согласованным окончанием.
Примеры:
ввод |
вывод |
2 5 8 1 |
16 птиц |
4 2 7 10 |
23 птицы |
3 1 8 9 |
21 птица |
Задача № 2 «Замок» (30 баллов)
Входной замок на двери Лисы Алисы работает следующим образом: если введено число, которое меньше 100 или больше 1000 − на дисплее устройства появляется надпись «FALSE»; если у введенного числа все цифры различные или сумма цифр числа равна 13 − появляется надпись «ENTER» и можно войти; в остальных случаях − появляется надпись «LOCK».
Входные данные: Вводится натуральное число
Выходные данные:Необходимо вывести надпись, которая должна быть на дисплее
Примеры:
ввод |
вывод |
1001 |
FALSE |
175 |
ENTER |
222 |
LOCK |
Задача 1. Сравнение комнат (10 б.)
Даша и Никита решили выяснить, чья комната больше. Комнаты Даши и Никиты имеют форму прямоугольников, причем комната Даши имеет размеры a на b метров, а комната Никиты – c на d метров.
Напишите программу, которая определит, чья комната больше: комната Даши или комната Никиты.
Формат входных данных
На ввод подается четыре натуральных числа, разделенных пробелами: a, b, c и d
(1 ≤ a, b, c, d ≤ 1000).
Формат выходных данных
Если комната Даши больше, выведите латинскую букву «D».
Если комната Никиты больше, выведите латинскую букву «N».
Если комнаты ребят имеют одинаковую площадь, выведите латинскую букву «E».
Пример
Входные данные |
Выходные данные |
3 6 4 4 |
D |
Задача 2. Рамки окон (20 б.)
Максим решил написать операционную систему. Для начала он планирует написать подпрограмму, которая будет рисовать рамки окон.
Поле для рисования представляет собой прямоугольник h×w пикселей, строки занумерованы сверху вниз от 1 до h, столбцы – слева направо от 1 до w.
На поле последовательно рисуются n рамок, i-я рамка представляет собой границы прямоугольника с противоположными углами в точках (ri,1, ci,1) и (ri,2, ci,2).
Требуется вывести получившееся изображение в виде h рядов по w символов, пиксель, который не был использован при изображении рамок, следует вывести с использованием символа «.», а пиксели i-й рамки с использованием i-го символа латинского алфавита (первая рамка изображается буквами «a», вторая — «b», и т.д.)
Формат входных данных
Первая строка содержит целые числа h, w и n – размеры поля и число рамок (2 ≤ h, w ≤ 80, 1 ≤ n ≤ 26).
Следующие n строк содержат по четыре целых числа каждая: ri,1, ci,1, ri,2 и ci,2 (1 ≤ ri,1 < ri,2≤ h, 1 ≤ ci,1 < ci,2 ≤ w)
Формат выходных данных
Выведите результат вывода описанных во вводе рамок.
Пример
Входные данные |
Выходные данные |
9 10 2 1 1 7 8 3 3 4 9 |
aaaaaaaa.. a......a.. a.bbbbbbb. a.bbbbbbb. a......a.. a......a.. aaaaaaaa.. .......... .......... |