У Аделины есть сад, в котором растут $$$w$$$ белых и $$$r$$$ красных роз. Девушка хочет собрать букет из цветов, но у нее есть несколько условий:
Определите, сможет ли Аделина собрать букет, удовлетворяющий всем условиям.
Каждый тест состоит из нескольких наборов входных данных. В первой строке находится одно целое число $$$t$$$ ($$$1 \le t \le 100$$$) — количество наборов входных данных. Далее следует описание наборов входных данных.
Первая строка описания набора входных данных содержит целое число $$$w$$$ ($$$0 \le w \le 10^{18}$$$) — количество белых роз, растущих в саду.
Вторая строка описания набора входных данных содержит целое число $$$r$$$ ($$$0 \le r \le 10^{18}$$$) — количество красных роз, растущих в саду.
Третья строка описания набора входных данных содержит целое число $$$k$$$ ($$$1 \le k \le 10^{18}$$$) — минимальное количество роз, которые Аделина может взять в букет.
Обратите внимание, что входные данные в этой задаче могут превышать возможное значение 32-битной целочисленной переменной, поэтому необходимо использовать 64-битные целочисленные типы данных (тип int64 в языке Pascal, тип long long в C++, тип long в Java и C#).
Для каждого набора входных данных в отдельной строке выведите «Yes», если Аделина может собрать букет из имеющихся в саду роз, удовлетворяющий двум описанным условиям. В противном случае выведите «No».
Баллы за каждую подзадачу начисляются только в случае, если все тесты для этой подзадачи и необходимых подзадач успешно пройдены.
| Подзадача | Баллы | Дополнительные ограничения | Необходимые подзадачи | Информация о проверке |
| 0 | 0 | Тесты из условия | полная | |
| 1 | 20 | $$$w, r \le 100$$$ | первая ошибка | |
| 2 | 20 | $$$w, r \le 10\,000$$$ | 1 | первая ошибка |
| 3 | 20 | $$$w, r \le 10^9$$$ | 1, 2 | первая ошибка |
| 4 | 40 | нет | 1, 2, 3 | первая ошибка |
4437546549201
Yes Yes No No
Рассмотрим пример из условия задачи.
В первом наборе входных данных в саду растут $$$4$$$ белые и $$$3$$$ красные розы, а букет должен содержать хотя бы $$$7$$$ роз. Таким образом, можно взять все растущие в саду цветы и составить из них букет.
Во втором наборе входных данных в саду растут $$$5$$$ белых и $$$4$$$ красные розы, а букет должен состоять хотя бы из $$$6$$$ роз. Таким образом, например, можно составить букет из $$$5$$$ белых и $$$1$$$ красной розы. Существуют и другие способы составить букет, например, взять $$$4$$$ белые и $$$3$$$ красные розы.
В третьем наборе входных данных в саду растут $$$5$$$ белых и $$$4$$$ красные розы, а букет должен состоять хотя бы из $$$9$$$ роз. Единственный способ набрать хотя бы $$$9$$$ роз — взять все цветы. Однако данный способ не подходит, так как при этом в букете будет $$$4$$$ красные розы, в то время как их количество должно быть нечетным.
После того, как Миша и Егор целый день играли в одну небезызвестную компьютерную игру, они решили как следует отдохнуть. Для этого они решили сыграть в «Очередную игру на прямой».
Суть этой игры очень проста — есть бесконечная полоска, разделенная на клетки, все клетки которой пронумерованы целыми числами слева направо. Также есть $$$n$$$ подарков, которые лежат в некоторых клетках полоски. Известно, что $$$i$$$-й подарок находится в клетке с номером $$$a_i$$$.
Сначала Миша ставит свою фишку в произвольную клетку. После этого Егор ставит свою фишку в любую клетку, но ему запрещается выбирать ту же клетку, которую выбрал Миша. Затем начинается сама игра. Игроки ходят по очереди, первым ходит Миша. В свой ход игрок может подвинуть свою фишку на одну клетку влево или вправо. Если фишка игрока оказывается в клетке, в которой находится подарок, игрок забирает подарок себе. Цель каждого из игроков — максимизировать количество подарков, которые он заберет. Если игрок изначально ставит свою фишку в клетку с подарком, то он сразу же забирает этот подарок.
Миша и Егор не новички в данной игре, поэтому они знают, что в этой игре существует выигрышная стратегия. Но они ушли спать, поэтому вам придется выяснить, в какую клетку нужно изначально положить фишку Мише, чтобы максимизировать количество подарков, которые он сможет забрать, при условии, что оба игрока играют оптимально и стремятся максимизировать свой выигрыш.
Первая строка содержит одно целое число $$$n$$$ ($$$1 \le n \le 100\,000$$$) — количество подарков.
Вторая строка содержит $$$n$$$ целых чисел $$$a_1, \ldots, a_n$$$ ($$$-10^9 \le a_i \le 10^9$$$) — номера клеток, в которых лежат подарки. Гарантируется, что все $$$a_i$$$ попарно различны.
Выведите одно целое число $$$p$$$ ($$$-2 \cdot 10^9 \le p \le 2 \cdot 10^9$$$) — номер клетки, в которую нужно изначально положить фишку Мише, чтобы максимизировать количество собранных им подарков.
Если существует несколько оптимальных ответов, выведите любой из них.
Баллы за каждую подзадачу начисляются только в случае, если все тесты для этой подзадачи и необходимых подзадач успешно пройдены.
| Подзадача | Баллы | Дополнительные ограничения | Необходимые подзадачи | Информация о проверке |
| 0 | 0 | Тесты из условия | полная | |
| 1 | 15 | $$$n \le 100$$$, $$$\lvert a_i \rvert \le 100$$$ | первая ошибка | |
| 2 | 20 | $$$n \le 1\,000$$$, $$$\lvert a_i \rvert \le 1\,000$$$ | 1 | первая ошибка |
| 3 | 20 | $$$n \le 1\,000$$$ | 1, 2 | первая ошибка |
| 4 | 15 | $$$0 \le a_i \le 10^6$$$ | первая ошибка | |
| 5 | 15 | $$$1 \le a_i \le n$$$ | первая ошибка | |
| 6 | 15 | нет | 1 – 5 | первая ошибка |
51 2 3 4 5
3
2 1000 -1000
0
Рассмотрим первый пример. Если Миша поставит фишку в третью клетку, то Егор может поставить фишку в четвертую или вторую клетки. Тогда Миша сможет забрать три подарка, а Егор только два.
Во втором примере Миша может встать в любую клетку из отрезка $$$[-1\,000, 1\,000]$$$. Тогда и он, и Егор получат по одному подарку.
Вы уснули на уроке, и вам приснился кошмар — на муниципальный этап ВсОШ по информатике дали задачу на геометрию...
Даны $$$a$$$ прямых, образующих угол $$$0^{\circ}$$$ с осью $$$OX$$$, $$$b$$$ прямых, образующих угол $$$60^{\circ}$$$ с осью $$$OX$$$, а также $$$c$$$ прямых, образующих угол $$$120^{\circ}$$$ с осью $$$OX$$$. Здесь имеются ввиду углы между прямой и положительным направлением оси $$$OX$$$. Если изобразить все прямые на одном рисунке, на нем образуется много треугольников. Легко заметить, что все треугольники являются равносторонними.
Вы не можете проснуться, пока не вычислите количество различных равносторонних треугольников, образовавшихся на рисунке.
Два треугольника считаются различными, если различаются тройки прямых, при помощи которых данные треугольники были образованы. Более формально, пусть $$$(i_1, j_1, k_1)$$$ — номера прямых, образующих первый треугольник, а $$$(i_2, j_2, k_2)$$$ — номера прямых, образующих второй треугольник ($$$1 \le i_1, i_2 \le a$$$, $$$1 \le j_1, j_2 \le b$$$, $$$1 \le k_1, k_2 \le c$$$). Данные треугольники считаются различными, если $$$i_1 \ne i_2$$$ или $$$j_1 \ne j_2$$$ или $$$k_1 \ne k_2$$$.
Первая строка содержит одно целое число $$$a$$$ ($$$1 \le a \le 5\,000$$$) — количество прямых, образующих угол $$$0^{\circ}$$$ с осью $$$OX$$$.
Вторая строка содержит $$$a$$$ целых чисел $$$y_{1, 1}, y_{1, 2}, \ldots, y_{1, a}$$$ ($$$-10^9 \le y_{1, i} \le 10^9$$$) — $$$y$$$-координаты точки пересечения $$$i$$$-й прямой с осью $$$OY$$$.
Третья строка содержит одно целое число $$$b$$$ ($$$1 \le b \le 5\,000$$$) — количество прямых, образующих угол $$$60^{\circ}$$$ с осью $$$OX$$$.
Четвертая строка содержит $$$b$$$ целых чисел $$$y_{2, 1}, y_{2, 2}, \ldots, y_{2, b}$$$ ($$$-10^9 \le y_{2, i} \le 10^9$$$) — $$$y$$$-координаты точки пересечения $$$i$$$-й прямой с осью $$$OY$$$.
Пятая строка содержит одно целое число $$$c$$$ ($$$1 \le c \le 5\,000$$$) — количество прямых, образующих угол $$$120^{\circ}$$$ с осью $$$OX$$$.
Шестая строка содержит $$$c$$$ целых чисел $$$y_{3, 1}, y_{3, 2}, \ldots, y_{3, c}$$$ ($$$-10^9 \le y_{3, i} \le 10^9$$$) — $$$y$$$-координаты точки пересечения $$$i$$$-й прямой с осью $$$OY$$$.
Выведите одно целое число — количество различных равносторонних треугольников, образовавшихся на рисунке.
Баллы за каждую подзадачу начисляются только в случае, если все тесты для этой подзадачи и необходимых подзадач успешно пройдены.
| Подзадача | Баллы | Дополнительные ограничения | Необходимые подзадачи | Информация о проверке |
| 0 | 0 | Тесты из условия | полная | |
| 1 | 10 | $$$n \le 100$$$ | первая ошибка | |
| 2 | 5 | Гарантируется, что никакие три прямые не пересекаются в одной точке | первая ошибка | |
| 3 | 15 | Гарантируется, что все прямые попарно различны, $$$|y_{i, j}| \le 10^6$$$ | первая ошибка | |
| 4 | 15 | $$$|y_{i, j}| \le 10^6$$$ | 3 | первая ошибка |
| 5 | 55 | нет | 1, 2, 3, 4 | первая ошибка |
30 1 -220 430 2 5
16
20 021 121 1
8
На рисунке ниже изображены прямые из первого примера. Синим цветом обозначены прямые, образующие угол $$$0^{\circ}$$$ с осью $$$OX$$$. Черным цветом обозначены прямые, образующие угол $$$60^{\circ}$$$ с осью $$$OX$$$. Красным цветом обозначены прямые, образующие угол $$$120^{\circ}$$$ с осью $$$OX$$$. Все точки пересечения прямых обозначены названиями от $$$P_1$$$ до $$$P_{17}$$$.
Список образовавшихся треугольников: $$$P_1P_{14}P_3$$$, $$$P_1P_{16}P_4$$$, $$$P_1P_{17}P_5$$$, $$$P_6P_{14}P_7$$$, $$$P_6P_{16}P_8$$$, $$$P_6P_{17}P_9$$$, $$$P_{10}P_{14}P_{11}$$$, $$$P_{10}P_{16}P_{12}$$$, $$$P_{10}P_{17}P_{13}$$$, $$$P_2P_7P_3$$$, $$$P_2P_{12}P_4$$$, $$$P_2P_{15}P_5$$$, $$$P_7P_{12}P_8$$$, $$$P_7P_{15}P_9$$$, $$$P_{12}P_{15}P_{13}$$$, $$$P_7P_{11}P_{12}$$$.
Во втором примере любая тройка прямых разных типов образует треугольник.
Кирилл — маленький зеленый монстрик, который очень любит читать книги. Именно поэтому он поступил в низший университет литературы. Домашнее задание Кирилла было очень простым — ему задали прочитать $$$n$$$ книг, пронумерованных целыми числами от $$$1$$$ до $$$n$$$. Известно, что в $$$i$$$-й книге было $$$a_i$$$ страниц. Кирилл должен читать книги именно в том порядке, в котором ему их выдали. Иными словами, он должен сначала прочитать книгу с номером $$$1$$$, затем прочитать книгу с номером $$$2$$$, и так далее.
На это задание Кириллу было отведено ровно $$$m$$$ дней, пронумерованных целыми числами от $$$1$$$ до $$$m$$$. При этом в $$$i$$$-й день он может прочитать только $$$b_i$$$ страниц. Таким образом, в каждый из этих $$$m$$$ дней (сначала в день с номером $$$1$$$, затем в день с номером $$$2$$$, и так далее) Кирилл будет выполнять задание и читать книги. За каждый из $$$m$$$ дней Кирилл может прочитать некоторое (возможно, нулевое) количество книг, соблюдая порядок их прочтения. Разумеется, Кирилл не будет читать одну и ту же книгу дважды.
Кирилл, конечно, умный монстрик, но у него есть одна серьезная проблема — если в какой-то день он не дочитает книгу до конца, то за ночь он все забудет, и на следующий день придется читать ее с самого начала. Также у Кирилла есть $$$k$$$ банок вишневого сока. Если в $$$i$$$-й день мальчик выпивает банку вишневого сока, то он может прочитать дополнительно $$$x$$$ страниц. При этом врач запретил ему пить в день более одной банки, так как это негативно скажется на его здоровье.
Как вы уже поняли, Кирилл поступил в университет литературы, а не программирования, поэтому вам придется посчитать, какое максимальное количество книг он сможет прочитать.
Первая строка содержит одно целое число $$$n$$$ ($$$1 \le n \le 100\,000$$$) — количество книг.
Вторая строка содержит $$$n$$$ целых чисел $$$a_1, \ldots, a_n$$$ ($$$1 \le a_i \le 10^9$$$) — количество страниц в $$$i$$$-й книге.
Третья строка содержит одно целое число $$$m$$$ ($$$1 \le m \le 100\,000$$$) — количество отведенных дней для того, чтобы прочитать эти книги.
Четвертая строка содержит $$$m$$$ целых чисел $$$b_1, \ldots, b_m$$$ ($$$1 \le b_i \le 10^9$$$) — количество страниц, которые Кирилл может прочитать в $$$i$$$-й день.
Пятая строка содержит два целых числа $$$k$$$ и $$$x$$$ ($$$0 \le k \le 10$$$, $$$0 \le x \le 10^9$$$) — количество банок вишневого сока, а также количество страниц, которые Кирилл сможет дополнительно прочитать, выпив банку сока.
Выведите единственное целое число — максимальное количество книг, которые сможет прочитать Кирилл.
Баллы за каждую подзадачу начисляются только в случае, если все тесты для этой подзадачи и необходимых подзадач успешно пройдены.
| Подзадача | Баллы | Дополнительные ограничения | Необходимые подзадачи | Информация о проверке |
| 0 | 0 | Тесты из условия | полная | |
| 1 | 10 | $$$n, m \le 8$$$ | первая ошибка | |
| 2 | 10 | $$$n, m \le 20$$$ | 1 | первая ошибка |
| 3 | 5 | $$$n \le 20$$$, $$$m \le 27$$$ | 1, 2 | первая ошибка |
| 4 | 15 | $$$k = 0$$$ | первая ошибка | |
| 5 | 20 | $$$a_i = 1$$$ для всех $$$1 \le i \le n$$$ | первая ошибка | |
| 6 | 20 | $$$k = 1$$$, $$$n, m \le 1\,000$$$ | первая ошибка | |
| 7 | 20 | нет | 1 – 6 | первая ошибка |
55 2 2 3 445 1 1 50 0
3
52 2 2 2 231 1 52 1
4
Рассмотрим первый пример. У Кирилла нет банок с соком, что сильно упрощает задачу. В первый день он может прочитать пять страниц, чего хватает ровно на одну книгу. В следующий день Кирилл читает одну страницу, но не дочитывает книгу до конца, из-за чего на следующий день придется читать ее сначала. В третий день происходит то же самое. В четвертый день Кирилл снова может прочитать ровно пять страниц, чего хватит на прочтение второй и третьей книг.
Рассмотрим второй пример. Если бы у Кирилла не было банок с соком, то он смог бы прочитать всего две книги. Но он может выпить сок в первый и второй дни. Тогда его способности по прочтению страниц будут следующими: $$$[2, 2, 5]$$$. Этого хватит на прочтение четырех книг.
Саша очень любит комбинаторные задачи, а также он является главным фанатом задачи «Хорошие раскраски», которая появилась на региональном этапе ВсОШ по информатике несколько лет назад. Более того, Саша очень любит играть со спичками. Поэтому мальчик решил придумать свою задачу о хороших раскрасках и порадовать вас своим творением.
Саша выложил в ряд на столе $$$n$$$ квадратов, состоящих из спичек. На рисунке ниже приведен пример получившейся фигуры для $$$n = 3$$$. Можно заметить, что фигура, состоящая из $$$n$$$ квадратов, содержит в себе $$$3n + 1$$$ спичек.
Назовем две спички соседними, если они касаются в углу некоторого квадрата. Например, на рисунке ниже спички, окрашенные синим цветом, являются попарно соседними.
У Саши в распоряжении есть краски $$$k$$$ различных цветов, и, разумеется, он хочет окрасить каждую спичку выложенной фигуры в некоторый цвет. Саша считает раскраску спичек хорошей, если никакие две соседние спички не окрашены в один цвет.
Будучи любителем комбинаторных задач, Саша задумался, сколько существует различных хороших раскрасок спичек. Помогите Саше решить данную тривиальную задачу. Так как ответ может быть достаточно большим, вам необходимо вычислить остаток от деления количества хороших раскрасок на число $$$998\,244\,353$$$.
Первая строка содержит одно целое число $$$n$$$ ($$$1 \le n \le 10^{18}$$$) — количество квадратов из спичек, которые выложил на столе Саша.
Вторая строка содержит одно целое число $$$k$$$ ($$$3 \le k \lt 998\,244\,353$$$) — количество различных цветов, которые может использовать Саша.
Обратите внимание, что входные данные в этой задаче могут превышать возможное значение 32-битной целочисленной переменной, поэтому необходимо использовать 64-битные целочисленные типы данных (тип int64 в языке Pascal, тип long long в C++, тип long в Java и C#).
Выведите одно целое число — остаток от деления количества различных хороших раскрасок на число $$$998\,244\,353$$$.
15
260
35
223380
1000000000000000000900000000
591253139
Баллы за подзадачи 1, 2, 4 – 8 начисляются только в случае, если все тесты для этой подзадачи и необходимых подзадач успешно пройдены.
Баллы за каждый тест в подзадаче 3 начисляются независимо, если все тесты необходимых подзадач успешно пройдены.
| Подзадача | Баллы | Дополнительные ограничения | Необходимые подзадачи | Информация о проверке |
| 0 | 0 | Тесты из условия | полная | |
| 1 | 5 | $$$n \le 4$$$, $$$k = 3$$$ | первая ошибка | |
| 2 | 10 | $$$n \le 20$$$, $$$k = 3$$$ | 1 | первая ошибка |
| 3 | 10 | $$$n \le 30$$$, $$$k = 3$$$ | 1, 2 | полная |
| 4 | 5 | $$$n = 1$$$ | первая ошибка | |
| 5 | 15 | $$$n \le 100$$$, $$$k \le 10$$$ | 1, 2, 3 | первая ошибка |
| 6 | 20 | $$$n \le 10^6$$$ | 1 – 5 | первая ошибка |
| 7 | 15 | $$$n \le 10^9$$$ | 1 – 6 | первая ошибка |
| 8 | 20 | нет | 1 – 7 | первая ошибка |