КОНКУРСНЫЕ ЗАДАНИЯ ШКОЛЬНОГО ЭТАПА ОЛИМПИАДЫ



ДОНЕЦКАЯ НАРОДНАЯ РЕСПУБЛИКА

ОТДЕЛ ОБРАЗОВАНИЯ

АДМИНИСТРАЦИИ КАЛИНИНСКОГО РАЙОНА ГОРОДА ДОНЕЦКА

83017, г. Донецк, бульвар Шевченко, 75, e-mail: roo_kalinin@bk.ru

 

 

УТВЕРЖДЕНО

на заседании Методического Совета

протокол№ ___ от «____»______2020г.

КОНКУРСНЫЕ ЗАДАНИЯ

ШКОЛЬНОГО ЭТАПА

ОЛИМПИАДЫ

По информатике

Обучающихся общеобразовательных учреждений Калининского района г. Донецка

В 2020 - 2021 учебном году

 

 

                                                                                                     

Руководитель районного методического объединения учителей информатики  

 

 

Донецк 2020

ТРЕБОВАНИЯ К ВЫПОЛНЕНИЮ ЗАДАНИЙ

ПО ИНФОРМАТИКЕ

 

Олимпиады по информатике за свою историю прошли путь развития, в результате чего сформировалась определенная проблематика, методика проведения и проверки (тестирования). Неизменным всегда оставалось одно: суть задания по информатике заключается в том, чтобы придумать достаточно эффективный алгоритм для решения в общем случае поставленной задачи и реализовать этот алгоритм в виде программы на одном из распространенных языков программирования. В настоящее время на олимпиаде по информатике в Донецкой Народной Республике участникам предлагаются языки программирования Pascal, C/C++, Python.

Задание практического тура рассчитано на 4 часа. Решение задачи – это один файл, содержащий текст программы на одном из языков программирования Pascal, C++ или Python (другие языки недопустимы). Только эти файлы (.pas, .cpp или .py) сдаются оргкомитету олимпиады.

Программа должна считать данные со стандартного устройства ввода (клавиатура), обработать его, вывести на стандартное устройство вывода (экран) полученные результаты и завершить корректно свою работу.

Программа не должна самостоятельно использовать никаких файлов.

Можно не проверять корректность данных. Гарантируется, что они всегда удовлетворяют указанным в задаче ограничениям и записаны в том формате, который указан в условии (см. раздел «Входные данные»).

Каждая строка заканчивается переводом строки, а элементы в строке отделяются друг от друга ровно одним пробелом (если в условии не указано обратное).

Результатом работы программы считается все то, программа выводит на стандартное устройство вывода (с помощью write(-ln), printf, cout, print), поэтому ни в коем случае не выводите подсказок («Введите N», «Сумма элементов будет равна ...» и т.п.).

Порядок и формат вывода результатов описан в условии задачи (см. раздел «Выходные данные»).

Ни в коем случае нельзя использовать прямой консольный ввод/вывод! Поэтому не следует подключать модуль crt в Pascal и заголовочный файл conio.h в C++, которые его используют.

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


КОНКУРСНЫЕ ЗАДАНИЯ ШКОЛЬНОГО ЭТАПА ОЛИМПИАДЫ

По информатике 8-9 класс

 

 

Задача 1. Шахматная доска (25 баллов)

Даны координаты двух полей шахматной доски (координаты клетки - это 2 числа от 1 до 8: номер столбца и номер строки). Одно ли цвета эти клетки на шахматной доске?  Вывести в выходной файл сообщение YES, если они одного цвета, и NO иначе.

 

Входные данные. Вводятся четыре числа от 2 до 8. Выходные данные. Выведите в одной строке сообщение YES или NO
Пример ввода: 1 1 2 2 Пример вывода: YES
1 1 1 4 NO

Задача 2. Список (25 баллов)

В фирме, выпускающей компьютерные комплектующие, все изделия получают последовательные номера от 1 до N. Каждое изделие после его изготовления поступает в отдел контроля качества, где оно проверяется, и либо уходит в продажу, либо заносится в список бракованных изделий и списывается. К сожалению, список бракованных изделий иногда оказывается чересчур длинным. Тогда для его сокращения подряд идущие числа заменяются интервалом: через тире указываются номера первого и последнего изделия интервала. Например, вместо 1,3,4,5,6,7,8,10,12,16,17,20,21,22,23,24 записывается 1,3-8,10,12,16-17,20-24.

Напишите программу, которая по полному списку номеров бракованных изделий, выдаст этот список в сокращенном виде. 1≤M≤N≤1000000.

 

Входные данные. Вводится сначала число N - общее количество изделий. Затем число M - количество изделий, оказавшихся бракованными. Далее вводятся в возрастающем порядке номера бракованных изделий. Выходные данные. Выведите в одной строке список номеров бракованных изделий в сокращенном виде. Интервалы должны разделяться запятой. В строке не должно быть пробелов.  
Пример ввода: 10000 1 5 Пример вывода: 5

 

Задача № 3. Метро. (25 баллов)

В мегаполисе, испытывающем большие транспортные проблемы, построили легкое метро. Оно состоит из 6 радиальных линий, которые расходятся из центра города, и k кольцевых линий в форме правильных шестиугольников. Станции метро располагаются на пересечении кольцевых и радиальных линий. На любой станции разрешено делать пересадки с кольцевых линий на радиальные и обратно. Радиальные линии последовательно нумеруются по часовой стрелке от 1 до 6. Кольцевые линии нумеруются от центра города (центр считается кольцевой линией с номером ноль, состоящей из одной станции).

Расстояние между двумя соседними станциями на одной радиальной линии равно 1 км. Расстояние между соседними станциями на кольцевой линии с номером i составляет i км. Любая станция обозначается парой чисел - номером радиальной линии r (1≤r≤6) и номером кольцевой линии k (0≤k≤32000), на пересечении которых она находится.

Напишите программу, определяющую длину кратчайшего пути между станциями.

 

Входные данные. Вводятся четыре числа - r1, k1, r2, k2 - координаты начальной и конечной станции. Выходные данные. Необходимо вывести расстояние (в км), которое потребуется проехать пассажиру, чтобы попасть c начальной станции на конечную.
Пример выходного файла (output.txt): 1 5 1 4 Пример входного файла (input.txt): 1
1 5 2 4 5
2 0 6 3 3

 

Задача № 4. День рождения (25 баллов)

На день рождения пришли N человек. В некоторый момент именинник решил, что пора устроить какую-нибудь игру. Он выяснил, что i-й человек согласен вступить в игру, если в ней уже принимают участие не менее A[i] и не более B[i] человек. Единожды вступив в игру, никто из нее не выходит. Требуется выяснить, может ли именинник установить такую последовательность вступления в игру, что в итоге все присутствующие станут ее участниками. (Сам именинник в игре участия не принимает.)

 

Входные данные. Сначала вводится количество гостей N (1≤N≤100). Затем вводится N пар чисел A[i] и B[i] (все эти числа из диапазона от 0 до N-1). Выходные данные. Если можно установить последовательность вступления гостей в игру, чтобы в итоге все стали ее участниками, то нужно вывести номера гостей в том порядке, в каком они могут вступать в игру. Если всех вовлечь в игру не удастся, выведите одно число - 0.
Пример выходного файла (output.txt): 5 4 4 0 3 1 4 1 3 2 2 Пример входного файла (input.txt): 2 3 5 4 1  
3 1 1 1 1 1 1 0
1 0 0 1

КОНКУРСНЫЕ ЗАДАНИЯ ШКОЛЬНОГО ЭТАПА ОЛИМПИАДЫ

По информатике 10-11 класс

 


Дата добавления: 2020-12-22; просмотров: 272; Мы поможем в написании вашей работы!

Поделиться с друзьями:






Мы поможем в написании ваших работ!