CF1398E.Two Types of Spells
普及/提高-
通过率:0%
AC君温馨提醒
该题目为【codeforces】题库的题目,您提交的代码将被提交至codeforces进行远程评测,并由ACGO抓取测评结果后进行展示。由于远程测评的测评机由其他平台提供,我们无法保证该服务的稳定性,若提交后无反应,请等待一段时间后再进行重试。
题目描述
Polycarp plays a computer game (yet again). In this game, he fights monsters using magic spells.
There are two types of spells: fire spell of power x deals x damage to the monster, and lightning spell of power y deals y damage to the monster and doubles the damage of the next spell Polycarp casts. Each spell can be cast only once per battle, but Polycarp can cast them in any order.
For example, suppose that Polycarp knows three spells: a fire spell of power 5 , a lightning spell of power 1 , and a lightning spell of power 8 . There are 6 ways to choose the order in which he casts the spells:
- first, second, third. This order deals 5+1+2⋅8=22 damage;
- first, third, second. This order deals 5+8+2⋅1=15 damage;
- second, first, third. This order deals 1+2⋅5+8=19 damage;
- second, third, first. This order deals 1+2⋅8+2⋅5=27 damage;
- third, first, second. This order deals 8+2⋅5+1=19 damage;
- third, second, first. This order deals 8+2⋅1+2⋅5=20 damage.
Initially, Polycarp knows 0 spells. His spell set changes n times, each time he either learns a new spell or forgets an already known one. After each change, calculate the maximum possible damage Polycarp may deal using the spells he knows.
输入格式
The first line contains one integer n ( 1≤n≤2⋅105 ) — the number of changes to the spell set.
Each of the next n lines contains two integers tp and d ( 0≤tpi≤1 ; −109≤d≤109 ; di=0 ) — the description of the change. If tpi if equal to 0 , then Polycarp learns (or forgets) a fire spell, otherwise he learns (or forgets) a lightning spell.
If di>0 , then Polycarp learns a spell of power di . Otherwise, Polycarp forgets a spell with power −di , and it is guaranteed that he knew that spell before the change.
It is guaranteed that the powers of all spells Polycarp knows after each change are different (Polycarp never knows two spells with the same power).
输出格式
After each change, print the maximum damage Polycarp can deal with his current set of spells.
输入输出样例
输入#1
6 1 5 0 10 1 -5 0 5 1 11 0 -10
输出#1
5 25 10 15 36 21