CF1705E.Mark and Professor Koro
普及/提高-
通过率:0%
AC君温馨提醒
该题目为【codeforces】题库的题目,您提交的代码将被提交至codeforces进行远程评测,并由ACGO抓取测评结果后进行展示。由于远程测评的测评机由其他平台提供,我们无法保证该服务的稳定性,若提交后无反应,请等待一段时间后再进行重试。
题目描述
After watching a certain anime before going to sleep, Mark dreams of standing in an old classroom with a blackboard that has a sequence of n positive integers a1,a2,…,an on it.
Then, professor Koro comes in. He can perform the following operation:
- select an integer x that appears at least 2 times on the board,
- erase those 2 appearances, and
- write x+1 on the board.
Professor Koro then asks Mark the question, "what is the maximum possible number that could appear on the board after some operations?"
Mark quickly solves this question, but he is still slower than professor Koro. Thus, professor Koro decides to give Mark additional challenges. He will update the initial sequence of integers q times. Each time, he will choose positive integers k and l , then change ak to l . After each update, he will ask Mark the same question again.
Help Mark answer these questions faster than Professor Koro!
Note that the updates are persistent. Changes made to the sequence a will apply when processing future updates.
输入格式
The first line of the input contains two integers n and q ( 2≤n≤2⋅105 , 1≤q≤2⋅105 ) — the length of the sequence a and the number of updates, respectively.
The second line contains n integers a1,a2,…,an ( 1≤ai≤2⋅105 )
Then, q lines follow, each consisting of two integers k and l ( 1≤k≤n , 1≤l≤2⋅105 ), telling to update ak to l .
输出格式
Print q lines. The i -th line should consist of a single integer — the answer after the i -th update.
输入输出样例
输入#1
5 4 2 2 2 4 5 2 3 5 3 4 1 1 4
输出#1
6 5 4 5
输入#2
2 1 200000 1 2 200000
输出#2
200001
说明/提示
In the first example test, the program must proceed through 4 updates.
The sequence after the first update is [2,3,2,4,5] . One sequence of operations that achieves the number 6 the following.
- Initially, the blackboard has numbers [2,3,2,4,5] .
- Erase two copies of 2 and write 3 , yielding [3,4,5,3] .
- Erase two copies of 3 and write 4 , yielding [4,5,4] .
- Erase two copies of 4 and write 5 , yielding [5,5] .
- Erase two copies of 5 and write 6 , yielding [6] .
Then, in the second update, the array is changed to [2,3,2,4,3] . This time, Mark cannot achieve 6 . However, one sequence that Mark can use to achieve 5 is shown below.
- Initially, the blackboard has [2,3,2,4,3] .
- Erase two copies of 2 and write 3 , yielding [3,4,3,3] .
- Erase two copies of 3 and write 4 , yielding [3,4,4] .
- Erase two copies of 4 and write 5 , yielding [3,5] .
In the third update, the array is changed to [2,3,2,1,3] . One way to achieve 4 is shown below.
- Initially, the blackboard has [2,3,2,1,3] .
- Erase two copies of 3 and write 4 , yielding [2,2,1,4] .