Vitebsk Open 2025, день 2
1. Задача A. Качалка
ограничение по времени на тест
1 секунда
ограничение по памяти на тест
256 мегабайт
ввод
стандартный ввод
вывод
стандартный вывод

Второй тур подходил к концу, и Сарай уже думает сразу после тура пойти позаниматься в качалочку. Одно из любимых упражнений Сарая — это поднятие штанги. Штанга представляет из себя гриф с дисками, которые расположены в определённом порядке. То есть штангу можно представить массив $$$a$$$ размером $$$n$$$, где $$$a_i$$$ — вес $$$i$$$-го диска. Гарантируется, что все диски имеют различный вес.

Но чтобы нормально позаниматься, надо, чтобы штанга была сбалансирована. Штанга $$$k$$$-сбалансирована, если выполняется условие: $$$a_n = k$$$, $$$a_{n-1} = k-1$$$, $$$...$$$, $$$a_{n-k+1} = 1$$$. Чтобы привести штангу к $$$k$$$-сбалансированному состоянию, Сарай может поменять местами два соседних диска, но поскольку они тяжелые, надо выполнить это за минимальное количество действий.

Поскольку Сарай хочет попробовать разные способы балансировки, чтобы найти для себя идеальный, вы должны найти минимальное количество действий для всех $$$q$$$ запросов $$$k$$$-балансировок, которые интересны ему.

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

Первая строка содержит одно целое число $$$n$$$ ($$$1 \leq n \leq 2 \cdot 10^5$$$) — длина массива $$$a$$$.

Следующая строка содержит $$$n$$$ целых чисел $$$a_1,a_2,\dots,a_n$$$ ($$$1 \leq a_i \leq n$$$), разделенных пробелами — массив $$$a$$$. Гарантируется что все $$$a_i$$$ различны.

Следущая строка содержит одно целое число $$$q$$$ ($$$1 \leq q \leq 2 \cdot 10^5$$$) — количество запросов.

В следующих $$$q$$$ строках содержится одно целое число $$$k$$$ ($$$1 \leq k \leq n$$$) — $$$k$$$-балансировка, которая интересует Сарая.

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

На каждый из $$$q$$$ запросов выведите в отдельной строке минимальное количество действий, чтобы получить $$$k$$$-балансировку.

Система оценки
№Дополнительные ограниченияБаллы за подзадачуНеобходимые подзадачи
$$$1$$$$$$n \le 3 \cdot 10^3, q = 1$$$$$$6$$$
$$$2$$$$$$n \le 500$$$$$$8$$$
$$$3$$$$$$n \le 3 \cdot 10^3$$$$$$10$$$$$$1, 2$$$
$$$4$$$$$$a_i \leq a_{i+1}$$$$$$14$$$
$$$5$$$$$$a_i \geq a_{i+1}$$$$$$18$$$
$$$6$$$$$$n \leq 2 \cdot 10^5, q = 1$$$$$$19$$$$$$1$$$
$$$7$$$Нет дополнительных ограничений$$$25$$$$$$1$$$ — $$$6$$$
Пример
Входные данные
5
3 5 4 1 2
3
1
5
3
Выходные данные
1
7
4

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

Второй тур кончился, чему очень рад Егор, ведь он не ставил фьючерсы уже целых $$$5$$$ часов.

Монеты, на которые Егор может поставить фьюч, можно представить в виде множества $$$S$$$ всех целых чисел от $$$1$$$ до $$$m$$$, то есть $$$ \{\, x \in S \mid 1 \leq x \leq m \, \} $$$. Но поскольку не на все монеты выгодно ставить деньги, у него есть специальное подмножество самых прибыльных монет $$$P$$$ размером $$$n$$$.

Но зайдя в бинанс Егор ужаснулся — какой-то гад поставил фьючи на все монеты сразу. Ему надо срочно все исправить, то есть сделать из множества $$$S$$$ множество $$$P$$$. Сделать это он может с помощью двух операций:

  • Удалить любой элемент из множества $$$S$$$. Из-за комиссии стоимость данной операции $$$1$$$ near.
  • Удалить элемент из множества $$$S$$$ равный $$$MEX-i$$$, где $$$MEX$$$ — это минимальное натуральное число, которое не встречается в множестве $$$S$$$, $$$i$$$ — это номер текущий операции в единичной индексации. Стоимость данной операции $$$0$$$ near.

Помогите Егору получить множество $$$P$$$ из $$$S$$$ за минимальное количество near.

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

В первой строке заданы два целых положительных числа $$$n$$$ и $$$m$$$ ($$$1 \leq n \leq m \leq 10^4$$$).

Следующая строка содержит $$$n$$$ целых различных чисел $$$p_1,p_2,\dots,p_n$$$ ($$$1 \leq p_i \leq m$$$), разделенных пробелами — описание множества $$$P$$$. Гарантируется, что $$$p_i \leq p_{i+1}$$$.

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

Выведите минимальное количество near.

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

Определим $$$ A = S \setminus P $$$. То есть $$$ A $$$  — множество элементов, которые необходимо удалить.

№Дополнительные ограниченияБаллы за подзадачуНеобходимые подзадачи
$$$1$$$$$$m \leq 11$$$$$$7$$$
$$$2$$$$$$m \leq 22$$$$$$12$$$$$$1$$$
$$$3$$$$$$m \leq 500$$$$$$16$$$$$$1, 2$$$
$$$4$$$$$$A_{m - n} = m - 1; A_i = A_{i + 1} - (m - n - i + 1) $$$$$$6$$$
$$$5$$$$$$ A_i - A_{i - 1} = A_{i + 1} - A_i $$$$$$14$$$
$$$6$$$Нет дополнительных ограничений$$$45$$$$$$1$$$ — $$$5$$$
Примеры
Входные данные
2 4
2 4
Выходные данные
1
Входные данные
3 3
1 2 3
Выходные данные
0
Примечание

Рассмотрим первый пример из условия. Изначально $$$MEX$$$ множества равен $$$m + 1 = 5$$$. Первой операцией мы не можем удалить элемент $$$MEX - 1 = 4$$$, так как он должен остаться. Поэтому удалим элемент 3 за $$$1$$$ near. После чего второй операцией мы можем удалить элемент $$$MEX - 2 = 3 - 2 = 1$$$ за $$$0$$$ near.

3. Задача C. Афтер пати
ограничение по времени на тест
1 секунда
ограничение по памяти на тест
256 мегабайт
ввод
стандартный ввод
вывод
стандартный вывод

После второго тура Дольчик решил отпраздновать окончание респы. Было решено организовать After party.

После $$$5$$$ выпитых бутылок липтона из окна полетели зарядки, пиццы и т.д. На звуки громкой музыки пришел Александр, которому стало интересно, что тут происходит. Зайдя в комнату, он увидел немного пьяного Дольчика. Хоть тот и всё отрицал, но Александр что-то заподозрил. Поэтому он решил устроить ему проверку трезвости.

Александр дал Дольчику массив строк $$$s$$$ размером $$$n$$$ и целое число $$$k$$$. Рассмотрим множество всех таких непустых строк, которые встречаются как подстроки во всех строках массива $$$s$$$ одновременно. И Александр просит Дольчика найти $$$k$$$-ую в лексикографическом порядке строку из этого множества.

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

Первая строка содержит два целых числа $$$n, k$$$ ($$$2 \leq n \leq 3 \cdot 10^5, 1 \leq k \leq 10^{12}$$$)  — длина массива $$$s$$$ и целое число $$$k$$$ соответственно.

Следующая строка содержит $$$n$$$ целых чисел $$$s_1,s_2,\dots,s_n$$$, разделенных пробелами — массив $$$s$$$.

Пусть $$$S$$$ — это суммарная длина всех $$$n$$$ строк массива $$$s$$$.

Тогда гарантируется, что $$$S$$$ не превосходит $$$3\cdot10^5$$$.

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

В первой строке выведите искомую строку или $$$-1$$$, если такой не существует.

Система оценки
№Дополнительные ограниченияБаллы за подзадачуНеобходимые подзадачи
$$$1$$$$$$S, n \leq 50$$$$$$5$$$
$$$2$$$$$$S, n \leq 700$$$$$$16$$$$$$1$$$
$$$3$$$$$$n = 2, S \leq 5 \cdot 10^4$$$$$$19$$$
$$$4$$$$$$n = 2$$$$$$25$$$$$$3$$$
$$$5$$$$$$S, n \leq 10^5$$$$$$11$$$$$$1$$$ — $$$3$$$
$$$6$$$Нет дополнительных ограничений$$$24$$$$$$1$$$ — $$$5$$$
Примеры
Входные данные
2 3
aaa
abaa
Выходные данные
-1
Входные данные
2 2
aaa
abaa
Выходные данные
aa

4. Задача D. Конец
ограничение по времени на тест
1 секунда
ограничение по памяти на тест
256 мегабайт
ввод
стандартный ввод
вывод
стандартный вывод

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

Заходя в вагон поезда, Михаил заметил странную наполовину закрашенную надпись — " Made in Po... ". Не обратив сильно внимания, он сел на свое место, и поезд тронулся.

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

И вот, зайдя в тамбур, он увидел человека в черном капюшоне. Этот человек предложил Мишане победить его в своей игре, и тогда он пообещал отпустить его друзей.

В этой игре в самом начале дается массив натуральных чисел $$$a$$$ размером $$$n$$$ и целое число $$$k$$$.

В свой ход игрок должен придумать массив $$$c$$$ $$$(0 \leq c_i \leq k,$$$ $$$ \sum c_i = k)$$$ размером $$$n$$$. После этого он находит число $$$S = \sum a_i \cdot c_i$$$. И если данное число $$$S$$$, получалось в предыдущих ходах у кого-то из игроков, данный игрок проигрывает.

Поскольку Миша умный спортпрогер, он сразу понял, что ответ зависит от четности количества различных $$$S$$$, которые могут получиться. Поэтому он просит вас помочь ему найти количество различных $$$S$$$.

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

Первая строка содержит два целых числа $$$n, k$$$ ($$$1 \leq n \leq 10^6, 1 \leq k \leq 300$$$)  — длина массива $$$a$$$ и целое число $$$k$$$ соответственно.

Следующая строка содержит $$$n$$$ целых чисел $$$a_1,a_2,\dots,a_n$$$ ($$$1 \leq a_i \leq 300$$$), разделенных пробелами — массив $$$a$$$.

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

Выведите количество различных $$$S$$$, которые могут получиться.

Система оценки
№Дополнительные ограниченияБаллы за подзадачуНеобходимые подзадачи
$$$1$$$$$$n, k, a_i \le 7$$$$$$3$$$
$$$2$$$$$$a_i = i, n \leq 300$$$$$$2$$$
$$$3$$$$$$n, k, a_i \leq 50$$$$$$14$$$$$$1$$$
$$$4$$$$$$k, a_i \leq 50$$$$$$13$$$$$$1, 3$$$
$$$5$$$$$$k, a_i \leq 100$$$$$$20$$$$$$1, 3$$$, $$$4$$$
$$$6$$$$$$k, a_i \leq 200$$$$$$23$$$$$$1, 3$$$ — $$$5$$$
$$$7$$$Нет дополнительных ограничений$$$25$$$$$$1$$$ — $$$6$$$
Пример
Входные данные
5 3
1 1 6 7 5
Выходные данные
15
Примечание

Голос этого человека казался Мише уж больно знакомым...