您需要动态地维护一个初始为空的集合 ,并且支持以下操作: 操作 :向集合 中插入一个数 ,如果 在集合 中已经存在,则忽略本次操作。 操作 :从集合 中删除一个数 ,如果 不在集合 中,则忽略本次操作。 操作 :查询一个数 是否在集合 中。如果存在,输出 ;否则输出 。 操作 :查询集合 中元素的个数,即集合 的大小。 操作 :查询集合 中 的前驱(前驱定义为小于 且最大的数),如果前驱不存在,则输出 。 操作 :查询集合 中 的后继(后继定义为大于 且最小的数),如果后继不存在,则输出 。
输入描述:
第一行输入一个整数 (),表示操作的个数。 接下来 行,每行表示一次操作。对于操作 ,输入两个整数 和 (,),分别表示操作类型和操作的参数;对于操作 ,输入两个整数 ,表示操作类型。
输出描述:
对于操作类型为 的每次操作,按照题意输出对应的查询结果,每个结果占一行。
示例1
说明
第一步插入操作向集合

中插入了元素

;
第二步查询操作类型为

,查询集合大小,当前集合中只有元素

,大小为

,因此输出

;
第三步删除了
集合
中的元素
;
示例2
输入
5
1 5
1 10
1 20
5 15
6 15
说明
前三步插入操作使集合

;
第四步操作类型为

,查询前驱,数字

在集合中前驱为

,输出

;
第五步操作类型为

,查询后继,数字

在集合中后继为

,输出

。
加载中...