Школьный этапа Всероссийской олимпиады
школьников
по информатике, 9-11 классы, 2018/2019
учебный год
Максимальное количество баллов – 45.
Задача
1.
“Толстый или худой?” – 10 баллов
Максимальное
время работы на одном тесте: 2 секунды
Максимальный
объем используемой памяти: 64 мегабайта
Вы, наверное, замечали, что люди бывают толстыми,
худыми и обыкновенными. Известно, что вес человека находится в норме, если он
ровно на 100 меньше его роста. Например, оптимальный вес школьника с ростом 160
см будет ровно 60 кг. Ваша задача – определить тип школьника по его весу и росту.
Формат
входных данных
Во
входном файле input.txt в двух строках находятся два числа H и W: H – рост
школьника, W – вес школьника. Числа H, W не превосходят 1000 .
Формат
выходных данных
Выведите
в выходной файл output.txt слово «OPTIMUM » (без кавычек), если вес школьника оптимален;
«FAT »,если школьнику стоит похудеть; «THIN », если школьнику стоит есть больше
мучного и сладкого.
Пример
Пример
входного файла input.txt
|
Пример
выходного файла output.txt
|
170
105
|
1. FAT
|
Задача
2.
“Лягушки” – 15 баллов
Максимальное
время работы на одном тесте: 2 секунды
Максимальный
объем используемой памяти: 64 мегабайта
Ваня наблюдает за лягушкой. Изначально она сидит в
точке 0 числовой прямой. Каждую секунду она прыгает на 1 вправо, пока не
достигнет точки K .Затем она начинает каждую секунду прыгать на 1влево, пока не
вернется в точку 0,затем – опять вправо и т.д. Требуется определить, где
окажется лягушка через T секунд.
Формат
входных данных
Во
входном файле input.txt в двух строках находятся два числа K и T, разделенные
пробелом. Оба числа натуральные и не превосходят 1 000 000 000.
Формат
выходных данных
Вывести
в выходной файл output.txt одно число – координату лягушки в момент времени T.
Пример
Пример
входного файла input.txt
|
Пример
выходного файла output.txt
|
5
8
|
2
|
Примечание
Программа
не должна выводить никаких дополнительных сообщений, а также не может содержать
операторов, вызывающих задержку выполнения программы (например, readln в конце
программы)
Задача
3.
«Шахматная доска» – 20 баллов.
Шахматная доска состоит из n × m клеток,
покрашенных в черный и белый цвет в «шахматном» порядке. При этом клетка в
левом нижнем углу доски покрашена в черный
цвет. Определите, сколько всего на доске черных клеток. Программа получает
на вход два числа n и m, записанных в отдельных строках. Все числа —
натуральные, не превосходящие 30 000. Программа должна вывести одно целое
число — количество черных клеток на доске.
Требования к выполнению: удачное прохождение каждого теста - 5 баллов.
Ключи
к заданиям школьного этапа
Всероссийской олимпиады школьников
Задача 1. “Толстый
или худой?” - 10
баллов
Задание рассчитано на написание
программы на любом языке программирования. Ввод данных может осуществляться как
из входного файла, так и с клавиатуры.
program
C;
var
a,
b: integer;
begin
assign(input,
'input.txt'); reset(input);
assign(output,
'output.txt'); rewrite(output);
read(a,
b);
if
(a - b = 100) then writeln('OPTIMUM');
if
(a - b < 100) then writeln('FAT');
if
(a - b > 100) then writeln('THIN');
close(input);
close(output);
end.
Задача
2.
“Лягушки” –
15 баллов
Задание рассчитано на написание
программы на любом языке программирования.
Ввод данных может осуществляться
как из входного файла, так и с клавиатуры.
program
A;
var
k,
t: integer;
begin
assign(input,
'input.txt'); reset(input);
assign(output,
'output.txt'); rewrite(output);
ReadLn(k,
t);
if
(t div k mod 2 = 0) then
WriteLn(t
mod k)
else
WriteLn(k
- t mod k);
close(input);
close(output);
end.
Задача 3. «Шахматная
доска» (Максимальное
количество баллов – 20 баллов)
Решение.
Рассмотрим частные случаи:
Доска 4х4 Доска 5х5
Видим закономерность:
1.
Если количество полей четное (4х4=16), то на каждом ряду одинаково
количество черных и белых клеток, т.е. чтобы найти количество черных полей
нужно общее количество клеток разделить на 2. Проверим: 16:2=8. Посчитаем.
Действительно 8!! Можете поэкспериментировать с досками других размеров, но
чтобы общее число клеток было четным.
2.
Если количество полей нечетное (5х5=25) то дело обстоит
иначе. Количество черных клеток вычисляется по формуле: (n+1)/2, где n —
общее число полей шахматной доски (25+1)/2=13 — верно!!!)
Если применим данную формулу для досок 3х3 или 5х3 — ответ будет
верным.
Программа на Паскале будет выглядеть следующим образом:
var n, m, result: longint;
begin
readln(n);
readln(m);
if n*m mod 2 =0 then result:=n*m div 2 else
result := (n*m+1) div 2;
writeln(result);
end.
(Оператор div используется
из-за того, что в данном шаблоне, в условии задачи, все переменные имеют
целочисленный тип. Если div заменить
на обычное деление, то переменную result нужно
объявлять как real).
Оставьте свой комментарий
Авторизуйтесь, чтобы задавать вопросы.