Апрельский кубок Санкт-Петербургской олимпиады по программированию 2020 прошел вместо очной олимпиады Санкт-Петербурга для 3-7 классов (но мы планируем все-таки провести ее, когда карантин закончится!)
Социальная дистанция (первая лига A)
Если $$$d\ge x$$$, то условие уже соблюдается, поэтому ответ 0, иначе ответ равен $$$x-d$$$.
Пример кода на языке Python:
d = int(input())
x = int(input())
if d >= x:
print(0)
else:
print(x - d)
Три оценки (первая лига B)
Для того, чтобы сделать сумму второй и третьей оценки как можно больше, нужно стараться сделать первую оценку как можно меньше.
Если $$$n\le 11$$$, то можно сделать первую оценку равной 1, а остаток распределить между второй и третьей оценкой, только надо делать это аккуратно, чтобы обе оценки были от 1 до 5. Один из способов это сделать — разделить на две примерно равные части, как сделано в приведенном ниже коде.
Если $$$n\ge 11$$$, то можно последние две оценки сделать равными 5, а остаток сделать первой оценкой.
Пример кода на языке Python:
n = int(input())
if n <= 11:
print(1, (n - 1) // 2, n // 2)
else:
print(n - 10, 5, 5)
Делим конфетки (первая лига C, высшая лига A)
Для того, чтобы распределить конфеты между $$$n$$$ участниками так, чтобы они получили различное число конфет, нужно как минимум $$$s=1+2+\ldots+n$$$ конфет. Эту сумму можно посчитать либо циклом, либо по формуле суммы арифметической прогрессии, как в коде ниже. Если у нас конфет меньше, чем $$$s$$$, то распределить не получится. Если же больше, чем $$$s$$$, то можно лишние конфеты отдать участнику на первом месте, и после этого все еще все будут получать различное число. Таким образом, нам нужно просто проверить, что $$$m\ge s$$$.
Пример кода на языке Python:
n = int(input())
m = int(input())
s = n * (n + 1) // 2
if m >= s:
print("Yes")
else:
print("No")
Игрушечная машинка (первая лига D, высшая лига B)
Пример кода на языке Python:
a = int(input())
Пилообразная последовательность (первая лига E, высшая лига C)
Пример кода на языке Python:
a = int(input())
Коллекционирование карт (первая лига F, высшая лига D)
Пример кода на языке Python:
a = int(input())
Кролики (первая лига G, высшая лига E)
Пример кода на языке Python:
a = int(input())
Падающие буквы (первая лига H, высшая лига F)
Пример кода на языке Python:
a = int(input())
Прыжки (высшая лига G)
Пример кода на языке Python:
a = int(input())
Развороты скобок (высшая лига H)
Пример кода на языке Python:
a = int(input())