Айболит сидит под деревом и принимает животных. Про каждого из животных известно, сколько времени нужно для его приема. Айболит не пьет, не ест и не спит — всё принимает и принимает больных, потому что он очень добрый и ответственный доктор. Айболит хотел бы организовать прием так, чтобы каждый пациент провел в очереди как можно меньше времени. Но для каждого зверя это сделать невозможно, потому что все хотят пройти первыми без очереди. Айболит все же придумал в какой очередности нужно принимать зверей, чтобы суммарное их ожидание в очереди было бы минимальным. Рассчитайте и вы, какое минимальное суммарное время проведут животные в очереди по плану Айболита.
В первой строке дано одно целое число $$$n$$$ ($$$1 \le n \le 10^6$$$) — количество пациентов. Во второй сроке $$$n$$$ натуральных чисел $$$a_i$$$ ($$$1 \le a_i \le 10^5$$$) — время приема $$$i$$$-го животного.
Выведите единственное число — минимальное суммарное время, которое животные проведут в ожидании приёма.

5 2 2 2 2 2
20
5 5 1 2 7 3
21
В 2029 году три финала Всероссийской олимпиады — по химии, информатике и физкультуре — проводятся в Самаре. Из Саратова прошло много участников по каждому из этих предметов, и все они планируют ехать в Самару на поезде. Руководитель сборной по химии уже купил билеты для своих подопечных. Руководитель сборной по информатике как раз сейчас планирует этим заняться. Но программисты — странные люди, у которых есть много запросов к купленным местам. Например, они категорически не хотят ехать в одном вагоне со спортсменами (участниками сборной по физкультуре), а также со всеми другими людьми, не прошедшими на всерос (то есть, из всех возможных людей, они готовы терпеть только всероссников по химии).
К счастью, пока кроме химиков ещё никто не успел купить билеты на поезд, так что всё, что нужно обеспечить руководителю, это чтобы после покупки билетов, в вагонах, в которых поедут участники сборной по информатике не осталось свободных мест (тогда там точно не поедут посторонние).
Но у руководителя есть и свои ограничения — он хочет, чтобы вагонов, в которых поедут его подопечные, было как можно меньше и они шли подряд (при этом допускается, чтобы между ними были целиком занятые вагоны).
Помогите руководителю сборной выбрать, в каких вагонах информатики поедут на олимпиаду, или определите, что это невозможно.
В первой строке дано два целых числа $$$n$$$ и $$$k$$$ ($$$1 \le n \le 10^5, 1 \le k \le 10^9$$$) — число вагонов и участников сборной соответственно.
Во второй строке даны $$$n$$$ целых чисел $$$a_i$$$ ($$$0 \le a_i \le 10^9$$$) — количество свободных мест в вагонах.
Гарантируется, что суммарное число свободных мест в поезде не превосходит $$$10^9$$$.
Выведите два целых числа — номера первого и последнего вагона, в которых поедут участники сборной.
Если же купить билеты, соблюдя все требования, невозможно, выведите -1.

7 5 1 2 3 4 2 1 2
2 3
5 3 1 0 2 10 10
1 3
Петя и Вова играют с надувными мячиками. Они стоят на расстоянии $$$L$$$ метров друг от друга. Каждую минуту Петя насосом надувает по одному мячику и бросает их в сторону Вовы, причём каждый мячик летит со скоростью $$$X$$$ метров в минуту. Если некоторый мячик оказывается на расстоянии меньшем или равном $$$D$$$ метров от Вовы, то Вова стреляет из пневматического пистолета в этот мячик, и тот лопается (выстрел происходит мгновенно, мячик лопается в тот же момент времени). Если же в какой-то момент есть несколько мячиков, находящихся на расстоянии меньшем или равном $$$D$$$ метров от Вовы, он стреляет в самый ближний к нему мячик. Мощности одного выстрела хватает только на то, чтобы лопнул один мячик. При этом, Вове требуется $$$M$$$ минут, чтобы повторно зарядить пневматический пистолет. Игра заканчивается тогда, когда до Вовы долетает мячик.
Помогите Пете определить, сколько ему нужно бросить мячиков перед тем, как игра закончится, или выведите -1, если ни один мячик не долетит до Вовы.
В единственной строке даны целые числа $$$L$$$, $$$X$$$, $$$D$$$ и $$$M$$$ — расстояние между ребятами, скорость полета мячика, расстояние, на котором Вова начинает лопать мячики, количество минут для перезарядки пистолета ($$$1 \le L, X, D, M \le 10^{9}; D \leq L$$$).
Выведите одно число — минимальное количество мячиков, которые нужно бросить перед тем, как игра закончится, или -1, если ни один мячик не долетит до Вовы.

Для каждой подзадачи сообщаются набранные баллы, а также результат тестирования на всех тестах.
6 1 3 2
4
5 2 2 1
-1
Финеас Барнум предложил Филиппу Карлайлу перспективное место работы в цирке. Эта работа непроста и сопряжена с некоторыми рисками, но мистера Карлайла заверили, что именно здесь он получит бесценный жизненный опыт. После долгих уговоров и большого количества аргументов мистер Карлайл готов был согласиться, но тут встал вопрос о деньгах.
Мистер Барнум готов заплатить мистеру Карлайлу $$$x$$$ (история умалчивает чего), но тот ценит свой труд больше, и хочет получать $$$y$$$. Узнав об этом, мистер Барнум решил сторговаться и увеличил свое предложение на $$$a$$$. Мистер Карлайл пошел ему навстречу, и уменьшил свое предложение на $$$b$$$. После этого мистер Барнум поднял свое предложение на $$$2 \cdot a$$$, затем мистер Карлайл уменьшил свое предложение на $$$2 \cdot b$$$, затем мистер Барнум увеличил свое на $$$3 \cdot a$$$, и так далее...
Как только очередное предложение, которое хочет назвать мистер Барнум становится больше или равно последнему предложению мистера Карлайла, или же сумма, которую хочет назвать мистер Карлайл, меньше или равна той, которую только что назвал мистер Барнум, торг заканчивается на последней названной сумме. Ваша задача — определить эту сумму.
В первой строке содержится единственное число $$$t$$$ — количество тестов ($$$1 \leq t \leq 2 \cdot 10^3$$$).
Далее следуют t строк, каждая из которых соответствует отдельному тесту. Каждый тест задан четырьмя целыми числами $$$x, y, a, b$$$ ($$$1 \leq x, y \leq 10^{12}, 1 \leq a, b \leq 10^6$$$) — суммы, с которых начинали торг Финеас Барнум и Филипп Карлайл, и их первый шаг в торге соответственно. Гарантируется, что $$$x \leq y$$$.
Для каждого теста в отдельной строке выведите по одному число — сумму, на которой договорятся мистер Барнум и мистер Карлайл.

Для каждой подзадачи сообщаются набранные баллы, а также результат тестирования на всех тестах.
1 7 18 1 3
10
1 4 4 4 4
4
В первом примере после предложений $$$7$$$ и $$$18$$$ будут названы $$$8$$$, $$$15$$$, и $$$10$$$. Следующее предложение мистера Карлайла должно быть равно $$$9$$$, что меньше, чем $$$10$$$, поэтому торг закончится на сумме $$$10$$$. Во втором примере торг сразу же закончится на сумме 4.
Однажды Георгий пришел в военкомат и провел там весь день. Ему так там понравилось, что на следующий день он пришел туда еще раз!
Чтобы пройти процедуру, необходимо получить $$$k$$$ печатей. За каждой печатью нужно стоять в очереди, причем все печати нужно обязательно получать по порядку (то есть от $$$1$$$-й до $$$k$$$-й). Известно, что $$$i$$$-я печать ставится ровно $$$t_i$$$ времени.
В военкомат пришло $$$n$$$ человек, $$$i$$$-й пришел в момент времени $$$a_i$$$. Как только человек заходит в военкомат, он сразу встает в очередь за первой печатью (если два человека пришли в одно время, то первым встает человек с меньшим номером). Как только кому-то поставили печать, он мгновенно встает в очередь за следующей печатью (а на его место заходит следующий по очереди, если такой есть) или, если он получил $$$k$$$-ю печать, он уходит. Также, некоторые люди очень занятые, поэтому про $$$i$$$-го человека известно, что, если $$$b_i = 0$$$, то он готов ждать сколько угодно, а иначе, если он находится в военкомате хотя бы $$$b_i$$$ времени, то ему надоедает ждать, и он просто покидает военкомат, не закончив.
Разумеется у работников военкомата нет перерыва, и они мгновенно начинают ставить печати каждому, кто к ним заходит.
Георгий хороший математик, поэтому он смог посчитать сколько каждый человек провел времени в военкомате. А сможете ли вы?
В первой строке даются числа $$$n$$$ и $$$k$$$ ($$$1 \le n \cdot k \le 10^5$$$) — количество людей, пришедших в военкомат и количество печатей, которые нужно получить.
В следующей строке идут $$$k$$$ чисел, в $$$i$$$-е число равно $$$t_i$$$ — время, которое нужно, чтобы поставить $$$i$$$-ю печать ($$$1 \le t_i \le 10^9$$$).
Далее идут $$$n$$$ строк, в $$$i$$$-й из них даются два числа $$$a_i$$$ и $$$b_i$$$ — время, в которое $$$i$$$-й человек приходит, и время, которое он готов провести в военкомате, после чего уйдет ($$$1 \leq a_i \leq 10^9, 0 \leq b_i \leq 10^9$$$).
Выведите в единственной строке $$$n$$$ чисел — время, которое $$$i$$$-й человек проведет в военкомате, если он получил все печати, или -1, если он так и не получит последнюю печать.

1 1 1 1 1
1
6 1 17 10 100 3 30 80 59 24 86 59 76 69 15
27 17 21 30 17 -1
В первом примере $$$1$$$-й человек придет ко времени $$$1$$$, проведет там $$$1$$$ единицу времени, после чего ему нужно будет уйти. Но к этому моменту он уже успеет поставить себе печать, поэтому он проведет в военкомате $$$1$$$ единицу времени и получит все печати.
У Арсения есть $$$n$$$ зверьков. Каждый из них обладает характером, поэтому, если в клетке, где находится $$$i$$$-й зверек, есть не больше $$$c_i$$$ зверьков, то его агрессивность будет $$$a_i$$$, а если больше, то его агрессивность будет $$$b_i$$$ ($$$a_i \le b_i$$$).
Также у Арсения есть клетка прочностью $$$s$$$, которая выдержит зверьков, суммарная агрессивность которых не больше $$$s$$$.
Помогите Арсению выяснить, какое наибольшее число зверьков он может хранить в клетке одновременно.
В первой строке через пробел заданы два целых числа $$$n$$$ и $$$s$$$ ($$$1 \le n \le 10^5, 0 \le s \le 10^9$$$).
В следующих $$$n$$$ строках задана характеристика животных числами $$$a_i$$$, $$$b_i$$$ и $$$c_i$$$ ($$$0 \le a_i \le b_i \le 10^9, 1 \le c_i \le n$$$).
Выведите единственное число — наибольшее количество животных, которое Арсений может одновременно хранить в клетке.

Для каждой подзадачи сообщаются набранные баллы, а также результат тестирования на всех тестах.
2 6 2 4 1 2 4 2
2
4 10 3 4 2 3 5 3 1 1 1 2 7 3
3
Саша и Артём поспорили на настольную игру, что Саша поедет следующим летом на стажировку в Google. Саша любит настольные игры, так что решительно намерена выиграть спор. Но для того, чтобы поехать стажироваться, нужно сначала пройти собеседование.
Саша выяснила, что на собеседовании соискателю предлагается решить одну задачу, от которой и зависит, проходишь ты или нет. Причём, данную задачу можно разбивать на подзадачи, а именно, если вам досталась задача с номером $$$\overline{a_1 \dots a_n}$$$, вы можете вместо неё решить задачи с номерами $$$\overline{a_1 \dots a_k}$$$ и $$$\overline{a_{k+1} \dots a_n}$$$ (например, вместо 571-й задачи можно решить задачи 5 и 71). Эти задачи, в свою очередь, тоже можно разбивать на подзадачи.
Саша считает задачу простой, если её номер является простым числом, и собирается, получив на собеседовании задачу, разбить её на простые подзадачи и решать их. Также девушка хочет, чтобы все эти подзадачи были небольшими, а именно, чтобы длина их номера не превышала $$$k$$$.
Саша получила задачу номер $$$n$$$, сколькими способами она может разбить её на нужные (небольшие и простые) подзадачи?
Так как число способов может быть большим, выведите его по модулю $$$10^9 + 7$$$.
На первой строке дано одно целое число $$$n$$$ ($$$1 \le |n| \le 10^6$$$) — номер задачи, доставшейся Саше на собеседовании.
На второй строке дано одно целое число $$$k$$$ ($$$1 \le k \le 6$$$) — максимальная длина подзадачи.
Выведите одно целое число — количество способов разбить задачу $$$n$$$ на короткие простые подзадачи по модулю $$$10^9 + 7$$$.
Номера подзадач не могут содержать ведущих нулей; 0 также не является простым числом.

37735 2
4
Для тестового примера возможны следующие разбиения: $$$3$$$|$$$7$$$|$$$7$$$|$$$3$$$|$$$5$$$; $$$37$$$|$$$7$$$|$$$3$$$|$$$5$$$; $$$37$$$|$$$73$$$|$$$5$$$; $$$3$$$|$$$7$$$|$$$73$$$|$$$5$$$.