ВОШ Школьный этап ответы и задания для 5, 6, 7, 8, 9, 10, 11 классов олимпиады по Информатике школьный этап 2020-2021 всероссийской олимпиады школьников (ВсОШ). Олимпиада проходит во всех школах города Московской области с 19-24 октября 2020 г.
• Посмотреть ВОШ на другие регионы и предметы: Смотреть
• Ссылка для скачивания 5-6 класс: Скачать
• Ссылка для скачивания 7-8 класс: Скачать
• Ссылка для скачивания 9-11 класс: Скачать
• Ссылка для скачивания заданий и ответов 11 класс: Скачать
Интересные задания 5-6 класс:
1. Саше на день рождения подарили разноцветные карандаши 5 цветов: красный, синий, зеленый, фиолетовый и желтый. Помимо этого у него есть 3 трафарета различных геометрических фигур: круг, квадрат и треугольник. Родители попросили Сашу нарисовать флажок, на котором будет присутствовать только одна геометрическая фигура, нарисованная по трафарету, причем покрасить он ее может только в один цвет. Сколько различных флажков может сделать Саша?
Флажки считаются различными, если они отличаются цветом или формой трафарета.
2. В некотором натуральном четырехзначном числе содержится не менее двух четных цифр и не менее трех цифр, которые меньше 8. Найдите наибольшее из таких чисел.
3. Однажды Тому Сойеру необходимо было покрасить забор. Но просто красить забор — утомитель-ное дело для Тома, поэтому во время перерыва он начал переливать краску между двумя ведрами (объемами 10 и 19 литров), которые у него имелись, и бочкой, наполненной краской. Первоначаль-но ведра были пустыми. Во время перерыва Том также позвал 4 своих друзей: Гекльберри Финна, Сида, Бэкки и Мэри. Они пришли его навестить в разные моменты времени.
В момент, когда пришел Гекльберри Финн, в ведре объемом 10 литров был 1 литр краски, а ведро объемом 19 литров было полное.
В момент, когда пришел Сид, в ведре объемом 10 литров было 2 литра краски, а ведро объемом 19 литров было полное.
В момент, когда пришла Бэкки, ведро объемом 10 литров было полное, а в ведре объемом 19 литров было 13 литров краски.
В момент, когда пришла Мэри, в ведре объемом 10 литров было 5 литров краски, а ведро объемом 19 литров было полное.
На следующий день Том решил подшутить над своими друзьями, показав, что он только сегодня начинает красить забор. Для этого ему необходимо, чтобы при встрече с каждым из них в ведрах находилось ровно столько же краски, сколько было и при встрече вчера. Однако Том не помнит, как именно он переливал краску между ведрами и бочкой с краской. Помогите Тому решить данную задачу.
Вам необходимо написать последовательность команд для Тома, в которой каждая команда записывается цифрой от 1 до 6 и обозначает следующее:
1 — Налить из бочки краску в 10-литровое ведро.
2 — Налить из бочки краску в 19-литровое ведро.
3 — Перелить краску из 10-литрового ведра в 19-литровое.
4 — Перелить краску из 19-литрового ведра в 10-литровое.
5 — Вылить всю краску из 10-литрового ведра в бочку.
6 — Вылить всю краску из 19-литрового ведра в бочку.
Команды необходимо записывать через пробел.
В результате должна получиться числовая последовательность из цифр от 1 до 6, записанная через пробел. На некоторых шагах ее результатами должны являться:
В 10-литровом ведре 1 литр краски, а в 19-литровом 19 литров.
В 10-литровом ведре 2 литров краски, а в 19-литровом 19 литров.
В 10-литровом ведре 10 литров краски, а в 19-литровом 13 литров.
В 10-литровом ведре 5 литров краски, а в 19-литровом 19 литров.
Считается, что в бочке настолько много краски, что брать краску из нее можно сколько угодно раз.
Интересные задания 7-8 класс:
1. Однажды Рону Уизли задали домашнее задание: отточить мастерство в применении заклинания ¾Вингардиум Левиос¿, которое заставляет любые предметы и материю парить. Для этих целей Рон достал огромную бочку с водой и две кастрюли (объемами 4 и 13 литров). Изначально кастрюли были пустыми. Далее Рон начал практиковаться, переливая воду с помощью заклинания между кастрюлями и бочкой с водой. Для того, чтобы похвастаться своими результатами, он позвал своих друзей: Гарри, Гермиону, Фреда и Джорджа. Они пришли повидать его в разное время.
В момент, когда пришел Гарри, кастрюля объемом 4 литра была полная, а в кастрюле объемом 13 литров было 9 литров воды.
В момент, когда пришла Гермиона, кастрюля объемом 4 литра была полная, а в кастрюле объе-мом 13 литров был 1 литр воды.
В момент, когда пришел Фред, кастрюля объемом 4 литра была полная, а в кастрюле объемом 13 литров было 12 литров воды.
В момент, когда пришел Джордж, кастрюля объемом 4 литра была пустая, а в кастрюле объемом 13 литров было 7 литров воды.
На следующий день Рон решил разыграть своих друзей, сделав вид, что сегодняшний день это вчерашний. Для этого ему необходимо, чтобы при встрече с каждым из друзей в кастрюле находилось ровно столько же воды, сколько было и при встрече вчера. Однако Рон не помнит, как именно он переливал воду между кастрюлями и бочкой с водой. Помогите Рону решить данную задачу.
Вам необходимо написать последовательность команд для Рона, в которой каждая команда за-писывается цифрой от 1 до 6 и обозначает следующее:
1 — Налить из бочки воду в 4-литровую кастрюлю.
2 — Налить из бочки воду в 13-литровую кастрюлю.
3 — Перелить воду из 4-литровой кастрюли в 13-литровую.
4 — Перелить воду из 13-литровой кастрюли в 4-литровую.
5 — Вылить всю воду из 4-литровой кастрюли в бочку.
6 — Вылить всю воду из 13-литровой кастрюли в бочку.
Команды необходимо записывать через пробел.
В результате должна получиться числовая последовательность из цифр от 1 до 6, записанная
через пробел. На некоторых шагах ее результатами должны являться:
В 4-литровой кастрюле 4 литра воды, а в 13-литровой 9 литров.
В 4-литровой кастрюле 4 литра воды, а в 13-литровой 1 литр.
В 4-литровой кастрюле 4 литра воды, а в 13-литровой 12 литров.
В 4-литровой кастрюле 0 литров воды, а в 13-литровой 7 литров.
Считается, что в бочке настолько много воды, что брать воду из нее можно сколько угодно раз.
2. Эта задача с открытыми тестами. Ее решением является набор ответов, а не про-грамма на языке программирования. Тесты указаны в самом условии. От вас требуется лишь ввести ответы на них в тестирующую систему.
Семиклассник Ваня готовится к олимпиаде по информатике. За дни подготовки, включая сего-дняшний день, он суммарно прорешал B задач. Чтобы мотивировать себя на дальнейшую работу, Ваня придумал хитрый алгоритм для подсчета количества задач, которые ему необходимо решать в каждый последующий день.
Алгоритм для подсчета количества задач на каждый последующий день:
1) В начале каждого нового дня Ваня подсчитывает суммарное количество решенных задач во все предыдущие дни. Пусть это число равно X;
2) Затем Ваня находит минимальный натуральный делитель числа X больший 1. Пусть он равен k;
3) Тогда количество задач, которые необходимо Ване решить сегодня, будет равно k. Используя данный алгоритм, Ваня решал задачи ровно A дней. Сколько всего задач решит Ваня
за всю свою подготовку к олимпиаде по информатике?
Формат выходных данных
Для каждого теста требуется ввести в тестирующую систему одно целое число суммарное количество решенных задач Ваней при подготовке к олимпиаде по информатике.
Замечание
Например, если у Вани было решено на сегодняшний день B = 4 задачи, а готовиться к олим-пиаде по новому алгоритму он будет A = 3 дня, то всего у него будет решено 10 задач.
•Тест№1:A = 7, B = 15;
•Тест№2:A = 20, B = 137;
•Тест№3:A = 11, B = 121;
•Тест№4:A = 167, B = 12;
•Тест№5:A = 1000, B = 100;
•Тест№6:A = 149, B = 7;
•Тест№7:A = 21453, B = 17;
•Тест№8:A = 15672, B = 12348;
•Тест№9:A = 1234781, B = 478833;
•Тест№10: A = 312423, B = 23432;
3. На уроках информатики Леша заинтересовался магическими числами. Это такие натуральные числа, сумма цифр которых равна самому числу.
Как-то раз в домашнем задании Леше попалась интересная задача: ¾Найдите количество маги-ческих чисел, меньших или равных N¿.
Так как Леша увлекается программированием, то он очень хотел бы решить данную задачу с помощью программы, но, к сожалению, ему не хватает на это навыков. Помогите Леше, написав программу, которая находит количество магических чисел, не превышающих N.
Формат входных данных
Первая строка входных данных содержит единственное число N (1 6 N 6 109).
Формат выходных данных
Программа должна вывести одно число — количество магических чисел, не превышающих N.
Интересные задания 9-11 класс:
Эта задача с открытыми тестами. Ее решением является набор ответов, а не про-грамма на языке программирования. Тесты указаны в самом условии, от вас требуется лишь ввести ответы на них в тестирующую систему.
Недавно на уроке информатики Вася узнал о позиционных системах счисления. Ему очень понра-вилось представлять разные числа в двоичной, троичной и даже девятеричной системе счисления. Помимо этого Васе нравится записывать цифры числа в обратном порядке. Вася берет произвольное натуральное число X и выполняет последовательно следующие три действия:
1. Вася переводит число X во все системы счисления с основанием от 2 до 9;
2. Все числа, полученные на предыдущем шаге, Вася записывает в обратном порядке, отбрасывая при этом у всех перевернутых чисел ведущие нули;
3. Вася находит максимальное из чисел, полученных на втором шаге, сравнивая значения этих чисел, как будто они записаны в десятичной системе счисления.
Какой результат получит Вася после выполнения трех шагов своего алгоритма для числа X?
Формат выходных данных
Для каждого теста требуется ввести в тестирующую систему одно целое число — ответ на задачу.
Замечание
Например, Вася хочет решить задачу для числа X = 8. Переведем число 8 во все системы счисления с основаниями k, где k принимает значения от 2 до 9.
При k = 2 получаем 810 = 10002;
при k = 3 получаем 810 = 223;
при k = 4 получаем 810 = 204
при k = 5 получаем 810 = 135;
при k = 6 получаем 810 = 126;
при k = 7 получаем 810 = 117;
при k = 8 получаем 810 = 108;
при k = 9 получаем 810 = 89.
Теперь запишем цифры данных чисел в обратном порядке и отбросим ведущие нули. Получим
числа 1 (для k = 2), 22 (для k = 3), 2 (для k = 4), 31 (для k = 5), 21 (для k = 6), 11 (для k = 7), 1 (для k = 8), 8 (для k = 9).
Теперь рассматриваем эти числа, как будто они записаны в десятичной системе счисления. Тогда максимальное из них равно 31, что и является ответом для исходного числа X = 8.
•Тест№1:X = 4;
•Тест№2:X = 12;
•Тест№3:X = 14;
•Тест№4:X = 80;
•Тест№5:X = 96;
•Тест№6:X = 144;
•Тест№7:X = 192;
•Тест№8:X = 912;
•Тест№9:X = 13824;
2. Пете подарили на день рождения прямоугольный торт размера A × B сантиметров. Петя не может дождаться праздничного ужина, поэтому очень хочет заранее отрезать себе k кусков так, чтобы гости ни о чем не догадались.
Для этого Петя придумал следующий план: он будет отрезать кусочки шириной 1 сантиметр от любого края торта, таким образом уменьшая либо A, либо B на 1 сантиметр. При этом, Петя хочет сделать так, чтобы после отрезания K кусочков площадь торта осталась максимально возможной.
Вам даны длины сторон исходного торта A, B и количество кусочков K. Напишите программу, которая определит, каких размеров должен оказаться торт после отрезания K кусочков, если его площадь максимально возможная.
Формат входных данных
В первой строке дано целое число A длина торта (1 6 A 6 109). Во второй строке дано целое число B ширина торта (1 6 B 6 109).
В третьей строке дано целое число K количество отрезанных кусочков (1 6 K 6 A + B − 2).
Формат выходных данных
Выведите два числа через пробел длину и ширину (в любом порядке) торта максимально возможной площади, полученного после отрезания K кусочков от исходного торта.
Замечание
Например, пусть изначально торт имел размеры 5 × 6 и K = 2. Тогда Петя может:
1. Отрезать кусок торта размера 5 × 1 и сделать таким образом торт квадратом размера 5 × 5;
2. Отрезать кусок торта с другой стороны и получить торт размера 4 × 5. Итоговая площадь после отрезания двух кусков торта станет равна 4 · 5 = 20.
3. 2020 год отметился не только грандиозными событиями, но и международной командной олим-пиадой школьников, которая будет впервые проведена в режиме Online.
Игорь Сергеевич уже много лет ведет занятия в школьном кружке по информатике и рассчи-тывает на триумф своих воспитанников в этом году. По удачному стечению обстоятельств в этом году под его руководством собралось множество талантливых ребят, которые могут принести славу не только школе, но и всему городу.
В школьном кружке на данный момент учатся N учеников, M из которых пишут на языке программирования С++, а остальные пишут на языке Cobol. Игорь Сергеевич обратил внимание на статистику олимпиад прошлых лет и заметил, что команды, которые пишут на языке C++, в среднем добиваются лучших результатов на олимпиадах. Для того чтобы все N учеников писали на языке C++, он разработал план.
План заключается в следующем: каждую неделю Игорь Сергеевич будет проводить тренировки, в которых будут участвовать команды по K человек, при этом распределение школьников на ко-манды может меняться по его усмотрению. Игорь Сергеевич считает, что в результате тренировки внутри каждой команды выбирается язык программирования, на котором пишут большинство её участников, а меньшинство переучивается на новый выбранный язык. При этом язык, на котором писало меньшинство раньше, забывается.
Для примера, если в команде из 11 человек 7 человек пишут на Cobol, а остальные 4 — на C++, то к концу тренировки все 11 участников команды будут писать на Cobol, а С++ будет ими забыт.
Игорь Сергеевич хочет выработать методику тренировок, рассчитанную на безоговорочную побе-ду. Требуется написать программу, которая определит за какое минимальное количество тренировок все ученики перейдут на С++.
Формат входных данных
В первой строке дается одно целое число N — общее количество учеников в школе (1 6 N 6 109). Во второй строке дается одно целое число M количество учеников, пишущих на языке С++
(1 6 M 6 109).
В третьей строке дается одно целое число K — количество людей в одной команде (1 6 K 6 109).
Гарантируется, что N делится без остатка на K, а K — нечетное.
Формат выходных данных
Ваша задача вывести одно число минимальное количество тренировок, которое необходимо провести для того, чтобы все школьники начали писать на С++. Если добиться того, чтобы все школьники начали писать на С++ невозможно, то выведите число -1.