MEX Queries
题意翻译
- 维护一个集合,初始为空。
- 有 $3$ 种操作:
1. 把 $[l,r]$ 中在集合中没有出现过的数添加到集合中。
2. 把 $[l,r]$ 中在集合中出现过的数从集合中删掉。
3. 把 $[l,r]$ 中在集合中没有出现过的数添加到集合中,并把 $[l,r]$ 中在集合中出现过的数从集合中删掉。
- 每次操作后输出集合的 $\operatorname{MEX}$ —— 在集合中没有出现过的最小正整数。
- $1\le n\le 10^5$,$1\le l\le r\le 10^{18}$。
题目描述
You are given a set of integer numbers, initially it is empty. You should perform $ n $ queries.
There are three different types of queries:
- 1 $ l $ $ r $ — Add all missing numbers from the interval $ [l,r] $
- 2 $ l $ $ r $ — Remove all present numbers from the interval $ [l,r] $
- 3 $ l $ $ r $ — Invert the interval $ [l,r] $ — add all missing and remove all present numbers from the interval $ [l,r] $
After each query you should output MEX of the set — the smallest positive (MEX $ >=1 $ ) integer number which is not presented in the set.
输入输出格式
输入格式
The first line contains one integer number $ n $ ( $ 1<=n<=10^{5} $ ).
Next $ n $ lines contain three integer numbers $ t,l,r $ ( $ 1<=t<=3,1<=l<=r<=10^{18} $ ) — type of the query, left and right bounds.
输出格式
Print MEX of the set after each query.
输入输出样例
输入样例 #1
3
1 3 4
3 1 6
2 1 3
输出样例 #1
1
3
1
输入样例 #2
4
1 1 3
3 5 6
2 4 4
3 1 6
输出样例 #2
4
4
4
1
说明
Here are contents of the set after each query in the first example:
1. $ {3,4} $ — the interval $ [3,4] $ is added
2. $ {1,2,5,6} $ — numbers $ {3,4} $ from the interval $ [1,6] $ got deleted and all the others are added
3. $ {5,6} $ — numbers $ {1,2} $ got deleted