#J1013D. 水王的奇妙集合

水王的奇妙集合

#水王的奇妙集合

**时间限制:2s 空间限制:28MB

题意描述

水王有一个由 nn 个整数组成的多重集。他希望你处理以下两种操作:

	-将整数 k 加入集合;
	
	-删除集合中第 k 小的数。

如果当前操作需要删除一个在集合中多次出现的元素,则只删除其中的一个。

在处理所有操作之后,如果它是空的,输出 "00" ;否则输出集合中最小的数字。

输入格式

第一行包含两个整数 nnq(1n,q106)q(1≤n,q≤10^6) ——初始集合中的元素数和操作数。

第二行包含 nn 个整数 a1,a2an(1a1a2ann)a_1, a_2,…, a_n(1≤a_1≤a_2≤……≤a_n≤n) 表示多重集中的元素。

第三行包含 qq 个整数k1,k2kqk_1, k_2,…, k_q,每个 kk 表示一个操作:

-如果 1kin1≤k_i≤n ,则第 ii 个操作为“在集合中加入 kik_i

-如果 ki<0k_i< 0 ,则第 ii 个操作是“从集合中删除第 ki|k_i| 小的数”。对于这个操作,可以保证 ki|k_i| 不大于集合当前的大小。

输出格式

如果所有操作后的集合为空,则打印" 00 "。

否则,输出在集合中的任意一个整数。

样例输入1

5 5
1 2 3 4 5
-1 -1 -1 -1 -1

样例输出1

0

样例输入2

5 4
1 2 3 4 5
-5 -1 -3 -1

样例输出2

3

样例输入3

6 2
1 1 1 2 3 4
5 6

样例输出3

1

样例解释

第一个样例,每次修改后的集合为:

2 3 4 5

3 4 5

4 5

5

因为集合最后为空,所以输出0

第二个样例,每次修改后的集合为:

1 2 3 4

2 3 4

2 3

3

最后集合剩下了3,所以输出3

第三个样例,每次修改后的集合为:

1 1 1 2 3 4 5

1 1 1 2 3 4 5 6

最后集合内还剩8个数字,因为要输出最小的数字,所以输出1

数据范围

数据点编号 nn\leq qq\leq
1,2,3,4 1,2,3,4 500 500
5,6,7,8 5,6,7,8 5000 5000
9,10,11,12 9,10,11,12 50000 50000
13,14,15,16 13,14,15,16 200000 200000
17,18,19,20 17,18,19,20 1000000 1000000