#XMOJ12273. 这里QK一下
这里QK一下
说明
时间限制:1 Sec
内存限制:256 MB
输入文件:qk.in 输出文件:qk.out
给定整数 $Q,K$,请处理 $Q$ 个查询。
- 类型 1:向数组 $S$ 中添加一个数 $v$。
- 类型 2:若数组 $S$ 的元素个数大于等于 $K$,输出 $S$ 中第 $K$ 小的元素,并将该元素从数组中删除;若元素个数不足 $K$,输出 $-1$。
注意:所有类型 $2$ 查询共用同一个 $K$。
输入格式
第一行两个整数 $Q,K$。
接下来 $Q$ 行,每行一个查询。
类型 $1$ 查询格式:$1$ $v_i$
类型 $2$ 查询格式:$2$
输出格式
按顺序输出每个类型 $2$ 查询对应的答案,每个答案单独一行。
样例
样例 1
15 3
1 3
1 4
1 5
2
2
1 10
1 10
1 1
2
1 3
2
1 1000
2
1 0
2
5
-1
4
3
10
3
样例说明:
数组变化过程:
1~3 查询:$S={3,4,5}$
第 $4$ 个查询:输出 $5$,$S={3,4}$
第 $5$ 个查询:输出 $-1$,$S={3,4}$
6~8 查询:$S={1,3,4,10,10}$
第 $9$ 个查询:输出 $4$,$S={1,3,10,10}$
第 $10$ 个查询:$S={1,3,3,10,10}$
第 $11$ 个查询:输出 $3$,$S={1,3,10,10}$
第 $12$ 个查询:$S={1,3,10,10,1000}$
第 $13$ 个查询:输出 $10$,$S={1,3,10,1000}$
第 $14$ 个查询:$S={0,1,3,10,1000}$
第 $15$ 个查询:输出 $3$,$S={0,1,10,1000}$
样例 2
4 1
1 10
1 10
2
2
10
10
样例说明:
数组可以存在重复数字;类型 每次只删除一个元素。
样例 3
4 2
1 9
1 10000000000000000
1 90000000000000000
2
10000000000000000
样例说明:
存在极大数值,、、,第 小为 。
样例 4
1 1
2
-1
数据范围
对于 8% 的数据,$Q,K,v_i \le 100$。
对于 12% 的数据,$Q,K \le 100$。
对于 24% 的数据,$K \le 1000$。
另有 8% 的数据,$K=1$。
对于 100% 的数据,满足 $1 \le Q \le 2\times 10^5$,$1 \le K \le 2\times 10^5$,$0 \le v_i \le 10^{18}$,保证至少存在一个类型 $2$ 查询。
提示
输入输出行数很大,注意 IO 速度!
相关
在下列比赛中: