В этой задаче речь пойдет про одного из участников первого отбора олимпиады «Когнитивные технологии» 2023-2024 года. Для анонимности будем звать этого участника именем Ратибор.
Так вот, Ратибор узнал, что в системе All Cups, на которой проходит олимпиада, есть шесть основных вердиктов, которые можно получить за посылку по задаче: OK, WA, PE, RE, ML и TL. Есть еще несколько вспомогательных вердиктов, но они не заинтересовали Ратибора.
Некоторые из вердиктов Ратибор уже получил на первом отборе, и ему захотелось собрать коллекцию из всех шести основных вердиктов. Поэтому он принял решение о том, что на втором отборе получит все недостающие вердикты. Конечно, в первую очередь Ратибор постарается занять первое место на втором отборе, но собрать коллекцию тоже очень важно для него.
Помогите Ратибору определить, каких вердиктов ему не хватает для коллекции.
В первой строке дано целое число $$$n$$$ ($$$1 \le n \le 5$$$) — количество различных вердиктов, которые Ратибор получил в системе All Cups на первом отборе.
В следующих $$$n$$$ строках даны вердикты, которые получил Ратибор, по одному в строке.
Выведите все вердикты, которых не хватает Ратибору для полной коллекции, по одному в строке. Вердикты можно выводить в любом порядке.
3OKWAPE
RE ML TL
$$$N$$$-факториалом называется число вида $$$1\cdot 2^2 \cdot 3^3 \cdot \ldots \cdot N^N$$$. Другими словами, это произведение всех чисел от $$$1$$$ до $$$N$$$, где каждый множитель возведен в степень, равную самому себе. Будем считать, что $$$N$$$-факториал определен для $$$N \ge 0$$$, а $$$0$$$-факториал равен $$$1$$$.
Вам дано целое положительное число $$$x$$$. Определите, является ли оно суммой двуx $$$N$$$-факториалов?
Например, если $$$x = 112$$$, то оно является суммой $$$3$$$-факториала и $$$2$$$-факториала, так как $$$112 = 108 + 4$$$, и при этом $$$108 = 1^1 \cdot 2^2 \cdot 3^3$$$, а $$$4 = 1^1 \cdot 2^2$$$
Первая строка входных данных содержит единственное целое число $$$x$$$ ($$$1 \le x \le 10^9$$$) — число, для которого необходимо сказать, является ли оно суммой двух $$$N$$$-факториалов.
Выведите:
Вы можете выводить ответ в любом регистре (например, строки «yEs», «yes», «Yes» и «YES» будут распознаны как положительный ответ).
112
YES
25
NO
8
YES
86400108
YES
Первый тест разобран в условии задачи.
В третьем тесте число является суммой двуx $$$2$$$-факториалов.
В стране Берляндии есть $$$n$$$ городов и $$$m$$$ двунаправленных дорог между ними. Все города пронумерованы от $$$1$$$ до $$$n$$$, и из любого города страны возможно добраться до любого другого. Между любой парой городов есть не более одной дороги, при этом каждая дорога имеет целую положительную длину.
Внутри страны находятся $$$2$$$ княжества, которые хотят разделить территорию между собой. Столица первого княжества находится в городе с номером $$$a$$$, а столица второго — в городе с номером $$$b$$$.
Княжества не очень ладят между собой, поэтому также хотят, чтобы между ними обязательно была граница, состоящая из непустого множества городов, не принадлежащих ни одному из княжеств.
Определите, можно ли разделить территорию так, чтобы одновременно выполнялись $$$4$$$ следующих условия:
Например, пусть $$$n = 7$$$, $$$m = 9$$$, столица первого княжества находится в городе $$$2$$$, а второго — в городе $$$3$$$. Карта Берляндии выглядит как на рисунке ниже:
Все города, которые будут принадлежать первому княжеству, покрашены в красный цвет, второму — в зеленый. Города, которые будут находиться на границе, покрашены в серый.
Первая строка входных данных содержит два целых числа $$$n$$$, $$$m$$$ ($$$3 \le n \le 500$$$, $$$n - 1 \le m \le \frac{n \cdot (n - 1)}{2}$$$) — количество городов в Берляндии и количество дорог между ними.
В следующих $$$m$$$ строках находится по три целых положительных числа $$$u$$$, $$$v$$$, $$$c$$$ ($$$1 \le u, v \le n$$$, $$$u \neq v$$$, $$$1 \le c \le 10^5$$$) — пара городов, соединенных дорогой и длина этой дороги.
В последней строке входных данных находятся два целых числа $$$a$$$, $$$b$$$ ($$$1 \le a, b \le n$$$, $$$a \neq b$$$) — города, в которых находятся столицы первого и второго княжества.
Если разделить города между княжествами так, чтобы выполнялись все условия, невозможно, выведите число $$$-1$$$;
Иначе на одной строке выведите ровно $$$n$$$ чисел, где $$$i$$$-е число ($$$1 \le i \le n$$$) будет равно:
7 91 7 21 3 31 5 41 2 34 2 26 2 53 7 13 5 63 4 22 3
0 1 2 0 2 1 2
3 31 2 11 3 12 3 21 3
-1
5 42 4 12 1 15 3 34 3 11 4
1 0 2 2 2
Первый тест разобран в условии задачи.
Во втором тесте нельзя построить границу между княжествами, так как нет непустого множества городов, имеющих одинаковые расстояния до $$$a$$$ и $$$b$$$.
Мальчик Гена решил на выходных устроить поход. Дом Гены расположен в поле. Рядом с домом находится круглое озеро. Радиус окружности озера равен $$$r$$$. Расстояние от центра озера до дома Гены равно $$$b$$$, где $$$b \gt r$$$. Через поле проходит дорога на расстоянии $$$a$$$ от центра озера, где $$$a \gt r$$$. Если через центр озера и дом Гены провести прямую, то окажется, что она параллельна дороге. Схема расположения объектов изображена на рисунке 1.
Карта местности Гена хочет организовать поход следующим образом. Сначала родители высадят его в какой-то точке дороги. От этой точки Гена начнет свой путь. Сперва он пойдет перпендикулярно дороге, пока не дойдет до озера. Затем, от озера до дома, Гена хочет пойти по прямой, которая проходит только по полю и не пересекает озеро. Понятно, что не всякая точка на дороге может быть началом маршрута, но Гена выберет правильную точку для старта, ведь он опытный турист. При этом Гена выберет для старта такую точку, чтобы его маршрут имел наименьшую длину.
Найдите длину маршрута Гены.
На рисунке 2 красным цветом изображен некорректный маршрут. Этот маршрут проходит через озеро, а Гена хочет идти всегда по полю и только в одной точке маршрута побывать возле озера.
Пример некорректного маршрута На рисунке 3 синим цветом изображен корректный маршрут — сначала он идет перпендикулярно дороге, пока не упрется в озеро, а затем от озера идет по прямой к дому, не проходя при этом через озеро. Это пример одного из возможных корректных маршрутов. Не утверждается, что это самый короткий корректный маршрут.
Пример корректного маршрута В первой строке дано одно целое число $$$r$$$ ($$$1 \le r \le 10$$$) — радиус озера.
Во второй строке дано одно целое число $$$b$$$ ($$$r \lt b \le 100$$$) — расстояние от центра озера до дома Гены.
В третьей строке дано одно целое число $$$a$$$ ($$$r \lt a \le 100$$$) — расстояние от центра озера до дороги.
В единственной строке выведите одно вещественное число — длину маршрута Гены.
Ответ считается правильным, если его абсолютная или относительная погрешность не превышает $$$10^{-6}$$$.
122
2.7380174596563809915899
Однажды горилла нашла дерево на $$$n$$$ вершинах. Корнем этого дерева является вершина $$$1$$$, а на рёбрах этого дерева записаны веса. Любая порядочная горилла захотела бы залезть на такое дерево и эта не стала исключением. Обратите внимание, что в этой задаче корень дерева находится наверху.
Горилла может начать свой путь в любой вершине с номером $$$v$$$ ($$$2 \le v \le n$$$). Изначально её усталость равна $$$1$$$. Когда горилла поднимается по ребру наверх (ближе к корню), её усталость умножается на вес этого ребра.
Горилла имеет выносливость $$$k$$$, поэтому она откажется идти по ребру, после которого её усталость станет строго больше $$$k$$$ и немедленно закончит путешествие. Если такое ребро не встретилось, горилла закончит путешествие в корне.
Назовём продолжительностью путешествия количество рёбер, по которым прошла горилла. Обозначим продолжительность путешествия из вершины $$$v$$$ как $$$d_v$$$.
Помогите горилле узнать числа $$$d_2, d_3, \ldots, d_n$$$. Другими словами, найдите продолжительности путешествия, если горилла будет начинать свой путь из вершины с номером $$$v$$$ ($$$2 \le v \le n$$$).
В первой строке дано целое число $$$t$$$ ($$$1 \le t \le 10^4$$$) — количество наборов входных данных.
Далее следует описание наборов.
В первой строке каждого набора даны целые числа $$$n, k$$$ ($$$2 \le n \le 2 \cdot 10^5$$$, $$$1 \le k \le 10^9$$$) — количество вершин в дереве и выносливость гориллы.
В следующих $$$n - 1$$$ строках каждого набора даны целые числа $$$v, u, w$$$ ($$$1 \le v, u \le n$$$, $$$1 \le w \le k$$$) — концы соответствующего ребра в дереве и вес этого ребра.
Гарантируется, что заданный набор рёбер образует дерево. Также гарантируется, что сумма $$$n$$$ по всем наборам входных данных не превосходит $$$2 \cdot 10^5$$$.
Для каждого набора входных данных выведите $$$n - 1$$$ целое число $$$d_2, d_3, \ldots, d_n$$$.
39 101 2 13 1 33 5 44 3 37 8 46 3 12 7 74 9 14 11 2 12 3 13 4 15 10000000002 1 10000000001 5 103 1 14 2 1000000000
1 1 2 1 2 2 1 3 1 2 3 1 1 1 1
Дерево в первом наборе входных данных первого теста выглядит так:

Во Всеберляндской олимпиаде по программированию могут участвовать команды в составе $$$n$$$ человек. Для участия каждой команде нужно выбрать название.
Участники одной из команд составили название, включающее каждое из их имен, и записали его в строку $$$t$$$ длины $$$m$$$. Однако, такое название получилось слишком длинным! Поэтому они хотят сократить его следующим образом:
Префиксом строки называется строка, полученная удалением нескольких (возможно, нуля) последних символов из исходной строки.
Некоторое множество подстрок входит в строку без пересечений, если никакой символ не принадлежит двум подстрокам одновременно. Например, подстроки «a» и «bc» входят в строку «ababc» без пересечений, а подстроки «aba» и «abc» — нет.
Если название команды возможно сократить — выведите длину минимального подходящего префикса.
Первая строка входных данных содержит два целых числа: $$$n$$$ ($$$2 \le n \le 8$$$) — количество участников в команде, и $$$m$$$ ($$$2 \le m \le 2 \cdot 10^5$$$) —длину названия, составленного командой.
Вторая строка входных данных содержит строку $$$t$$$, состоящую из строчных латинских букв — название, составленное командой.
Далее следуют $$$n$$$ строк, каждая из которых содержит строку $$$s_i$$$, состоящую из строчных латинских букв ($$$1 \le |s_i| \lt m$$$) — имя $$$i$$$-го участника команды ($$$1 \le i \le n$$$). Длина строки $$$s_i$$$ обозначается как $$$|s_i|$$$.
Гарантируется, что сумма значений $$$|s_i|$$$ не превосходит значения $$$m$$$, и в строку $$$t$$$ можно поместить имена всех участников без пересечений.
Выведите:
4 22omihaakrisssashaannaaakrismihasashaanna
20
2 16coolnickgoodalexnickalex
-1
3 7babababababb
5