A21466.K大数查询
省选/NOI-
通过率:0%
时间限制:1.00s
内存限制:128MB
题目描述
你需要维护 n 个可重整数集,集合的编号从 1 到 n。
这些集合初始都是空集,有 m 个操作:
1 l r c
:表示将 c 加入到编号在 [l,r] 内的集合中2 l r c
:表示查询编号在 [l,r] 内的集合的并集中,第 c 大的数是多少。
注意可重集的并是不去除重复元素的,如 {1,1,4}∪{5,1,4}={1,1,4,5,1,4}。
输入格式
第一行两个正整数 n,m,表示集合个数和操作个数。
接下来 m 行,每行四个整数表示一次操作。
输出格式
对于每个 2 操作,输出一行一个整数表示答案。
输入输出样例
输入#1
2 5 1 1 2 1 1 1 2 2 2 1 1 2 2 1 1 1 2 1 2 3
输出#1
1 2 1
说明/提示
【样例说明】
第 1 次操作在 1,2 号集合中分别加入了一个 1。
第 2 次操作在 1,2 号集合中分别加入了一个 2。
第 3 次操作查询 1 号集合中第 2 大的数,答案为 1。
第 4 次操作查询 1 号集合中第 1 大的数,答案为 2。
第 5 次操作查询 1,2 号集合的并集 {1,2,1,2} 中第 3 大的数,答案为 1。
【数据范围】
1≤n,m≤5×104
1≤l,r≤n
1 操作中 ∣c∣≤n
2 操作中 1≤c<263