#P6968. [NEERC 2016] Expect to Wait

[NEERC 2016] Expect to Wait

Description

[NEERC2016] Expect to Wait

市长小A想要给H市添加独轮车车站,任何有“特殊的卡片”的人,都可以到车站请求骑车或停放。

申请独轮车很简单,申请骑车的人到车站排队,如果那个站有独轮车停放,那么就让处于队头位置的人先骑,否则,排队的人会等到有人把独轮车送到车站。

定义等待时间为从请求人开始排队到取到车所花的时间,如果一个人取不到独轮车,那么等待的时间是无限(infinity)的。总等待时间是每个人等待时间的总和。

小A已经知道人们每天在什么时候向车站请求和放下独轮车,车站可以同时容纳无限独轮车。他会告诉你每天车站里人们的用车计划,然后对你进行n次询问,每次提问会告诉你一天开始时车站里有的独轮车数,请你来计算每个问题所对应的总等待时间。

Input Format

第一行包含两个正整数 nnq(1n,q105),q (1 \le n , q \le 10^{5} ), nn代表有n个用车计划, qq代表小A会问你n个问题 接下来nn行代表每个用车计划,每个计划包含一个操作说明:

+tk+tk 代表人们在tt时间要求停放kk辆车;

tk- t k 代表人们在tt时间要求取kk辆车.

对于每个用车计划: 1t1091 \le t \le 10^{9} and 1k1041 \le k \le 10^{4} . 输入的最后一行包含 qq 个不同的整数 bi(0bi109b_{i} (0 \le b_{i} \le 10^{9} ) -- 一天开始时独轮车的数量。

操作的顺序是按时间复杂度从小到大的

Output Format

输出应包括qq行。第i行应显示当天开始时bib_{i}独轮车的总等待时间。如果总等待时间是无限的,则相应的行应显示单词INFINITY

样例 #1

样例输入 #1

5 4
- 1 1
- 2 2
+ 4 1
- 6 1
+ 7 2
0 3 1 2

样例输出 #1

INFINITY
0
8
3
5 4
- 1 1
- 2 2
+ 4 1
- 6 1
+ 7 2
0 3 1 2

INFINITY
0
8
3

Hint

时间限制: 2 s,空间限制: 512 MB.