Муниципальный этап ВсОШ по информатике, 7-8 классы, Пермский край, 2025
A. Строитель Боб
ограничение по времени на тест
1 секунда
ограничение по памяти на тест
256 мегабайт
ввод
стандартный ввод
вывод
стандартный вывод

Это output-only задача. Обязательно прочитайте секцию «Формат выходных данных» данного условия, иначе вы можете не получить баллы даже при правильном решении!

Строитель по имени Боб работает в космосе. Сегодня он построил туннель размером $$$L \times W \times H$$$ (см. рисунок). При строительстве стен Боб использовал кубики размером $$$1\times 1\times 1$$$. Толщина стен, пола и потолка в туннеле ровно 1 кубик.

Бобу нужно покрасить все видимые боковые грани кубиков туннеля.

Чтобы покрасить квадрат $$$1\times 1$$$, требуется ровно $$$1$$$ банка краски.

Покрасить нужно:

  • все внешние поверхности, которые видны при облете туннеля снаружи;
  • все внутренние поверхности, которые можно обозревать, находясь внутри;
  • грани кубиков, которые видны при входе в туннель и при выходе из него.

Требуется узнать, сколько банок краски потребуется для окраски всей видимой поверхности туннеля.

Для туннеля, изображенного на рисунке, например:

  • на покраску внешних стен уйдет $$$72$$$ банки краски;
  • на покраску внутренней поверхности потребуется $$$48$$$ банок;
  • рамки входной и выходной части — $$$40$$$ банок.

Выведите формулу, с помощью которой Боб сможет рассчитать количество необходимых банок краски для туннеля любых размеров (для любых $$$L$$$, $$$W$$$ и $$$H$$$).

Выходные данные

Ответом на задачу является формула, которую вам необходимо записать в шаблон программы, приведенный ниже:


answer = "<формула для вычисления ответа>"

Формула должна быть записана в кавычках.

Выражение может содержать:

  • целые числа,
  • переменные $$$L$$$, $$$W$$$ и $$$H$$$ (записываются английскими буквами),
  • знак сложения $$$(\text{обозначается }+)$$$,
  • знак вычитания $$$(\text{обозначается }-)$$$,
  • знак умножения $$$(\text{обозначается }*)$$$,
  • знак деления нацело $$$(\text{обозначается }/)$$$,
  • знак целочисленного остатка при делении нацело $$$(\text{обозначается }\%)$$$,
  • круглые скобки.
Запись вида $$$2X$$$ для обозначения произведения числа $$$2$$$ и переменной $$$X$$$ некорректна, требуется писать $$$2 * X$$$.

Полученный код Вам необходимо сдать на проверку, выбрав язык программирования Python 3.13.2.

Будьте внимательны! Вы не получите баллы за эту задачу, если сдадите решение под любым другим языком программирования.

Пример правильно оформленного ответа:


answer = "L + 4*W + H"

В примере формула выдумана и не является правильной.

Система оценки

За формулу, корректно работающую при всех натуральных значениях $$$L$$$, $$$W$$$, $$$H$$$, вы получите $$$100$$$ баллов.

В противном случае вы получите $$$0$$$ баллов.

Примечание

Если Вы отправили ответ в правильном формате и ваши формулы записаны по правилам, описанным в условии задачи, то во время тура вы получите вердикт «Полное решение: 0 баллов». Такой вердикт означает, что формула записана корректно и решение принято на проверку. Это гарантирует возможность проверки формулы, но ничего не говорит о её правильности.

При нарушении формата ответа или формулы Вы можете получить вердикты «Ошибка формата вывода» или «Ошибка исполнения». В этом случае стоит внимательно перечитать условие и выполнить все требования к ответу, которые в нём описаны.

Тестирование ответа на правильность и начисление баллов будет происходить в режиме offline после окончания тура.

При отправке нескольких решений задачи в зачет пойдет лучшее решение, набравшее наибольшее количество баллов.

B. Наклейки для скорой
ограничение по времени на тест
1 секунда
ограничение по памяти на тест
256 мегабайт
ввод
стандартный ввод
вывод
стандартный вывод

Это output-only задача. Обязательно прочитайте секцию «Формат выходных данных» данного условия, иначе вы можете не получить баллы даже при правильном решении!

В отделение скорой помощи скоро поставят новые автомобили! Руководство попросило службу обеспечения подготовиться к этому мероприятию и вырезать опознавательные знаки — красные кресты — для новых машин.

В службе обеспечения нашли лист красной самоклеящейся пленки размерами $$$N \times M$$$ метров. Для машин используются кресты, получаемые из квадрата $$$3 \times 3$$$ метра вырезанием крайних углов (см. рисунок, крест выделен цветом и жирной линией).

После этого служба обеспечения обратилась к вам за помощью — они просят посчитать, какое максимальное количество наклеек-крестов они смогут вырезать из своего листа. Помните, не обязательно вырезать кресты именно из квадрата путем отсечения уголков.

Справитесь ли вы с этой задачей?

Вам даны 5 пар чисел $$$N$$$ и $$$M$$$. Посчитайте для каждого случая, какое максимальное количество крестов для новых автомобилей можно вырезать из листа размеров $$$N \times M$$$.

$$$N$$$$$$M$$$Количество вырезанных "+"
$$$7$$$$$$5$$$answer1 = ваш ответ
$$$3$$$$$$16$$$answer2 = ваш ответ
$$$4$$$$$$11$$$answer3 = ваш ответ
$$$8$$$$$$8$$$answer4 = ваш ответ
$$$11$$$$$$15$$$answer5 = ваш ответ
Выходные данные

Ответом на задачу являются 5 чисел, обозначенных в таблице answer1, answer2, answer3, answer4, answer5. На проверку нужно сдать содержимое последнего столбца таблицы (без заголовка), указав конкретные числа.

Вот шаблон Вашего ответа:


answer1 = <число>
answer2 = <число>
answer3 = <число>
answer4 = <число>
answer5 = <число>

Полученный код Вам необходимо сдать на проверку, выбрав язык программирования Python 3.13.2.

Будьте внимательны! Вы не получите баллы за эту задачу, если сдадите решение под любым другим языком программирования.

Пример правильно оформленного ответа:


answer1 = 8
answer2 = 3
answer3 = 1
answer4 = 29
answer5 = 17

В примере числа выдуманы и не совпадают с правильными.

Система оценки

Верный ответ на каждый из вопросов оценивается в 20 баллов. Максимум за задачу можно получить 100 баллов.

Примечание

Если Вы отправили ответы в правильном формате, то во время тура вы получите вердикт «Полное решение: 0 баллов». Такой вердикт означает, что решение принято на проверку. Это гарантирует возможность проверки ответов, но ничего не говорит о их правильности.

При нарушении формата ответа Вы можете получить вердикты «Ошибка формата вывода» или «Ошибка исполнения». В этом случае стоит внимательно перечитать условие и выполнить все требования к ответу, которые в нем описаны.

Тестирование ответов на правильность и начисление баллов будет происходить в режиме offline после окончания тура.

При отправке нескольких решений задачи в зачет пойдет лучшее решение, набравшее наибольшее количество баллов.

C. Магия слов
ограничение по времени на тест
1 секунда
ограничение по памяти на тест
256 мегабайт
ввод
стандартный ввод
вывод
стандартный вывод
Большая часть волшебства в мире кажется несуществующим, потому что мы слишком слепы или слишком заняты, чтобы его увидеть. Слепота и неверие — вот два врага волшебства. Видеть и верить — перед теми, кто на это способен, открывается много ворот, если они захотят.
— Андрэ Нортон
Элиза считает, что в мире существует много всякого волшебства. Она верит, что человек творит чудеса собственными руками. Главное — повторять, повторять, повторять то, что ты хочешь, чтобы произошло, и самому верить. Тогда волшебство заработает, и всё выйдет, как надо.

Элиза даже составляет магические фразы-заклинания, которые помогают ей поверить в свои силы. Она считает, что заклинание должно состоять из трёх различных слов. В нём обязательно должны использоваться слова «see» (англ. видеть), «believe» (англ. верить) и «repeat» (англ. повторять), но не все три слова сразу, подойдёт одно из этих слов или два.

Вам даны $$$3$$$ слова на английском языке, записанные маленькими буквами. Определите, образуют ли эти слова магическую фразу-заклинание по правилам Элизы.

Входные данные

Вводится 3 строки. В каждой строке записано по одному слову.

В каждой строке встречаются только маленькие буквы английского алфавита. Длина каждого слова не превышает 15 символов.

Выходные данные

Выведите «YES», если данные три слова образуют заклинание по правилам Элизы. В противном случае выведите «NO».

Кавычки в ответе выводить не нужно.

Система оценки

В задаче $$$4$$$ подзадачи. Подзадача $$$0$$$ — тесты из условия, за неё баллы не начисляются. Тестирование подзадачи начинается, если пройдены все тесты в необходимых подзадачах. Система оценки «полная» означает, что решению будут начисляться баллы только при успешном прохождении всех тестов данной подзадачи.

ПодзадачаБаллыДополнительныеНеобходимыеСистема
ограниченияподзадачиоценки
$$$0$$$$$$0$$$Тесты из условия
$$$1$$$$$$10$$$Все слова состоят из $$$3$$$ букв$$$0$$$полная
$$$2$$$$$$15$$$Все слова состоят из одинакового числа букв$$$0,\ 1$$$полная
$$$3$$$$$$25$$$Все слова различны между собойполная
$$$4$$$$$$50$$$$$$0,\ 1,\ 2,\ 3$$$полная

Примеры
Входные данные
see
bee
tea
Выходные данные
YES
Входные данные
two
ant
see
Выходные данные
YES
Входные данные
see
you
see
Выходные данные
NO

D. Как развлекаются домашние роботы?
ограничение по времени на тест
1 секунда
ограничение по памяти на тест
256 мегабайт
ввод
стандартный ввод
вывод
стандартный вывод

В век цифровых технологий и умных помощников наши дома насыщены домашними роботами. У большинства есть робот-пылесос. Умный чайник по расписанию или клику с телефона вскипятит воду. А смарт-колонка ответит на любой наш вопрос. А задумывались ли вы, как развлекаются наши роботы-помощники, пока нас нет дома?

Оказывается, пока никого нет, роботы играют в игру, похожую на игру в города, когда каждый следующий город должен начинаться на букву, которой закончилось название предыдущего города. Например, Москва – Адлер – Ржев – Воронеж и т.д. Только вместо названий городов роботы используют числа.

Правила игры такие:

  1. Каждое следующее число должно начинаться на ту цифру, которой закончилось предыдущее число.
  2. Можно использовать 4-х значные числа, состоящие из различных цифр, не имеющие в своем составе цифру ноль.
  3. Повторять число, звучавшее ранее, нельзя.
  4. Если игрок называет некорректное число (не удовлетворяющее условиям 1 – 3), то засчитывается штрафное очко. После чего этот же игрок должен предложить новое число. Если новое число снова неверное, то вновь добавляется штрафное очко, и нужно вновь предложить число. До тех пор, пока не будет названо верное число, либо пока игра не закончится.

Вам попал протокол игры: список чисел, которые называли роботы, во время игры. Вы знаете, что играли Пылесос, Чайник и Колонка. Первый ход принадлежал Пылесосу, далее ходил Чайник, потом Колонка и далее по кругу в том же порядке.

Руководствуясь протоколом игры, определите, сколько ходов сделал каждый и сколько штрафных очков получил.

Входные данные

Вводится несколько строк (не менее 2-х). В каждой строке записано четырехзначное число. В последней строке вводится число 0, означающее конец протокола игры.

Выходные данные

Выведите три строки. В каждой строке выведите статистику игрока — количество ходов, которые он сделал или пытался сделать, и количество штрафных очков, заработанных им. Статистику каждого игрока располагайте в отдельной строке.

Первая строка должна содержать статистику Пылесоса, вторая — данные Чайника, а третья — Колонки.

Система оценки

В задаче $$$5$$$ подзадач. Подзадача $$$0$$$ — тесты из условия, за неё баллы не начисляются. Тестирование подзадачи начинается, если пройдены все тесты в необходимых подзадачах. Система оценки «полная» означает, что решению будут начисляться баллы только при успешном прохождении всех тестов данной подзадачи.

ПодзадачаБаллыДополнительныеНеобходимыеСистема
ограниченияподзадачиоценки
$$$0$$$$$$0$$$Тесты из условия
$$$1$$$$$$12$$$Никто не получил штрафного очкаполная
$$$2$$$$$$16$$$Все числа удовлетворяют второму правилуполная
$$$3$$$$$$17$$$Все сыгранные числа различныполная
$$$4$$$$$$9$$$Игра всегда заканчивается успешным ходом$$$0$$$полная
$$$5$$$$$$46$$$$$$0$$$ – $$$4$$$полная

Пример
Входные данные
4123
3287
7789
7895
5437
7895
2876
7631
0
Выходные данные
2 0
2 2
1 1
Примечание

В примере из условия корректными ходами были (по порядку): 4123, 3287, 7895, 5437, 7631. Колонка свой второй ход начать не успела.

E. Счастье в одной цифре
ограничение по времени на тест
1 секунда
ограничение по памяти на тест
256 мегабайт
ввод
стандартный ввод
вывод
стандартный вывод

Миша очень любит ездить на автобусе. В его городе в автобусах всё ещё ходят кондукторы и продают бумажные билеты. На каждом билете есть номер, являющийся $$$2N$$$-значным числом. Счастливым называют такое $$$2N$$$-значное число, у которого сумма первых $$$N$$$ цифр равна сумме последних $$$N$$$ цифр.

Миша понимает, что вероятность получения счастливого билета крайне мала, поэтому он придумал себе следующую игру. Он пытается изменить ровно одну цифру в выданном билете, чтобы получившееся число было счастливым. Помогите Мише найти такое число.

Входные данные

В первой строке записано число $$$N$$$ ($$$1 \le N \le 50$$$) — половина длины числа на билете.

Во второй строке записано натуральное число $$$a$$$ — число, записанное на билете. Количество цифр в числе $$$a$$$ равно $$$2N$$$, первая цифра числа $$$a$$$ не равна $$$0$$$.

Выходные данные

В единственной строке выведите счастливое число, которое ровно одной цифрой отличается от введённого. Менять цифру необходимо, даже если исходное число было счастливым. Если таких чисел несколько, выведите наименьшее. Если таких чисел нет, выведите -1.

Система оценки

В задаче $$$5$$$ подзадач. Подзадача 0 — тесты из условия, за неё баллы не начисляются. Тестирование подзадачи начинается, если пройдены все тесты в необходимых подзадачах. Система оценки «полная» означает, что решению будут начисляться баллы только при успешном прохождении всех тестов данной подзадачи.

ПодзадачаБаллыДополнительныеНеобходимыеСистема
ограниченияподзадачиоценки
$$$0$$$$$$0$$$Тесты из условия
$$$1$$$$$$8$$$$$$N = 1$$$полная
$$$2$$$$$$11$$$$$$N = 2$$$полная
$$$3$$$$$$14$$$$$$N = 3$$$полная
$$$4$$$$$$19$$$$$$N \le 5$$$$$$0,\ 1,\ 2,\ 3$$$полная
$$$4$$$$$$50$$$$$$0,\ 1,\ 2,\ 3,\ 4$$$полная

Пример
Входные данные
4
91212004
Выходные данные
21212004
Примечание

Пояснение к примеру из условия: у счастливого числа $$$21212004$$$ сумма первых четырёх цифр ($$$2 + 1 + 2 + 1 = 6$$$) равна сумме последних четырёх цифр ($$$2 + 0 + 0 + 4 = 6$$$).