eolymp
bolt
Спробуйте наш новий інтерфейс для відправки розв'язків
Задачі

Статуэтки

Статуэтки

У Боба много мини-фигурок. Ему нравится выставлять некоторые из них на полке над экраном своего компьютера. Боб регулярно заменяет старые фигурки новыми. Постоянно меняющееся украшение действительно доставляет удовольствие. Боб заботится о том, чтобы никогда не добавлять одну и ту же мини-фигурку более одного раза. У Боба есть только $n$ мини-фигурок, и через $n$ дней он доходит до момента, когда каждая из $n$ фигурок была добавлена, а затем убрана с полки (которая, таким образом, пуста). У Боба очень хорошая память. Он способен запомнить, какие мини-фигурки выставлялись в каждый из прошлых дней. Итак, Боб хочет выполнить небольшое умственное упражнение, чтобы проверить свою память и вычислительные способности. Для этого Боб нумерует свои фигурки числами $0, ..., n - 1$ и выбирает последовательность $n$ целых чисел $d_0, ..., d_{n-1}$ в диапазоне $[0; п]$. Затем Боб вычисляет последовательность $x_0, . . . , x_n$ следующим образом: $x_0 = 0$ и $x_{i+1} = (x_i + y_i)~mod~n$ где mod --- операция по модулю, а $y_i$ --- количество фигурок, отображаемых в день $d_i$, номер которых больше или равен $x_i$. Результат вычислений Боба --- $x_n$. Более формально, если $S(i)$ --- подмножество $\{0, ..., n - 1\}$, соответствующее фигуркам, выставленным на полке в $i$-ый день, то: \begin{itemize} \item $S(0)$ пустое множество; \item $S(i)$ получается из $S(i - 1)$ путем вставки и удаления некоторых элементов. \end{itemize} Каждый элемент $j~(0 \le j < n)$ вставляется и удаляется ровно один раз, поэтому последнее множество $S(n)$ также является пустым множеством. Вычисление, которое выполняет Боб, соответствует следующей программе: $~~~~~x_0 = 0$ $~~~~~for~i \in [0; n - 1]$ $~~~~~~~~~~x_{i+1} = (x_i + \#\{y \in S(d_i)~такое~что~y \ge x_i\})~mod~n$ $~~~~~вывести~x_n$ Боб просит Вас проверить его расчеты. Для этого он дает Вам числа, которые он использовал при вычислении $(d_0, ..., d_{n-1})$, а также журнал того, какие фигурки он добавлял или удалял каждый день. Обратите внимание, что мини-фигурка, добавленная в день $i$ и убранная в день $j$, присутствует в день $k~(i \le k < j)$. Вы должны сообщить ему число, которое найдете в конце вычислений. \InputFile Состоит из $2 \cdot n + 1$ строк. \begin{itemize} \item Первая строка содержит целое число $n~(1 \le n \le 10^5)$. \item Строки от $2$ до $n + 1$ описывают добавленные и удаленные фигурки. Строка $i + 1$ содержит разделенные пробелами $+j$ или $-j$, $0 \le j < n$, чтобы указать, что $j$ добавляется или удаляется в день $i$. Эта строка может быть пустой. Строка может содержать как $+j$, так и $-j$ именно в этом порядке. \item Строки с $n + 2$ по $2 \cdot n + 1$ описывают последовательность $d_0, ..., d_{n-1}$. Строка $n + 2 + i$ содержит целое число $d_i~(0 \le d_i \le n)$. \end{itemize} \OutputFile Выведите одно число $x_n$. \begin{itemize} \item сначала $x = 2$ так как $S(1) = \{0, 2\}$ и $\#\{y \in S(1)~такие~что~y > 0\} = 2$; \item потом $x = 0$ так как $S(2) = \{1, 2\}$ и $\#\{y \in S(2)~такие~что~y > 2\} = 1$; \item и наконец $x = 2$ так как $S(2) = \{1, 2\}$ и $\#\{y \in S(2)~такие~что~y > 0\} = 2$. \end{itemize}
Ліміт часу 2 секунди
Ліміт використання пам'яті 256 MiB
Вхідні дані #1
3
+0 +2
-0 +1
-1 -2
1
2
2
Вихідні дані #1
2
Джерело 2020 ACM Southwestern Europe Regional Contest (SWERC), Paris, March 7 (2021), Problem H