C. 兰登战术

内存限制:512 MiB 时间限制:1000 ms 标准输入输出
题目类型:传统 评测方式:文本比较

题目描述

Problem C. 兰登战术

题目英文名:landeng

时空限制:4s/512MB

题目描述:

弦には三つの選択が、敵には三種の苦難があります。

弦有三种选择,而敌人有三种苦难。

空弦擅长使用多种不同的弓和箭。来到罗德岛以后,在工程部的帮助下,空弦对弓箭之间搭配的强度有了更深刻的理解。

每把弓和每支箭都有一对参数,一把弓搭配上一支箭后,它们能造成的威力是参数的和与参数的和中的较大值,即

这天,空弦经手了罗德岛的弓箭甄选事务:在个时刻她会不断收到或失去一把弓,或者,收到或失去一支箭(可能存在不同的弓箭能力值完全相同的情况)。同时,在每个时刻,她想知道:所有可能的搭配里,威力最小的搭配的威力是多少。

作为工程部最厉害的程序员,请你帮她计算一下这个值。

当然作为工程部最厉害的程序员,你的阅读理解未必是最厉害的。所以下面还有一个简化版题面:

你需要维护两个可重集合和,集合内的元素都是形如的二元组。

有次操作,每次操作会指定其中一个集合,增加或减少它的一个元素。

每次操作后,你需要回答以下这个值:

集合是可重的,因此,加入一个元素时,集合内可能已经存在一个相同的元素,此时一样需要加入;删除一个元素时(数据保证此时至少存在一个)如果有多个一样的元素,只删除一个。

输入格式

输入格式:

输入数据第一行输入一个正整数。

接下来行,每行输入四个正整数描述一个操作:

表示这次操作是加入,表示这次操作是删除;

表示对集合进行操作,表示对集合进行操作;

表示这个元素是。

输出格式

输出格式:

输出行,每行一个整数表示这次操作以后,所有可能的搭配里,威力最小的搭配的威力是多少。

如果此时和至少有一个是空集,则输出。

样例

输入样例:

6
1 1 100 100
1 2 30 130
1 1 120 170
2 1 100 100
1 2 70 100
2 1 120 170

输出样例:

-1
230
230
300
270
-1

样例解释:

第一次操作后,是空集,输出;

第二次操作后,只能选和,答案是(参数相加);

第三次操作后,可以选和,答案是;或和, 答案是 (参数相加);因为选较小的一个,所以最终答案是;

第四次操作后,只能选和,答案是;

第五次操作后,可以选和,答案是;或和 , 答案是(参数相加);最终答案是;

第六次操作后,是空集,输出。

数据范围与提示

数据范围:

一共个测试点,每个分。

对于所有数据,。

特殊性质:所有操作,即只有加入操作

特殊性质:存在一个操作,使得在它之前的操作都满足,在它之后的操作都满足,即先对操作,再对操作

测试点编号 其他
特殊性质
特殊性质