题目名称 3906. [HDOJ 4006]第k大的数
输入输出 kth.in/out
难度等级 ★★
时间限制 1000 ms (1 s)
内存限制 256 MiB
测试数据 10
题目来源 Gravatarsyzhaoss 于2023-07-28加入
开放分组 全部用户
提交状态
分类标签
平衡树 优先队列
分享题解
通过:2, 提交:5, 通过率:40%
Gravatarsyzhaoss 100 1.266 s 4.24 MiB C++
Gravatar沉迷学习的假的Keller 100 5.495 s 10.16 MiB C++
Gravatar沉迷学习的假的Keller 60 6.820 s 4.39 MiB C++
Gravatar沉迷学习的假的Keller 30 6.669 s 9.95 MiB C++
Gravatar沉迷学习的假的Keller 0 0.000 s 0.00 MiB C++
关于 第k大的数 的近10条评论(全部评论)

3906. [HDOJ 4006]第k大的数

★★   输入文件:kth.in   输出文件:kth.out   简单对比
时间限制:1 s   内存限制:256 MiB

【题目描述】

小明和小宝正在玩数字游戏。游戏有$n$轮,小明在每轮中都可以写一个数,或者问小宝第 $k$ 大的数是什么(第 $k$ 大的数指有$k-1$个数比它大)。

【输入格式】

输入第一行包含两个整数$n,k(1\leq k\leq n\leq 10^6)$。

接下来$n$行,每行一个操作表示一轮游戏。

I x:表示小明写下一个数$x$;

Q:表示小明询问最大的数。

输入保证当写下的数字个数小于$k$时,小明不会问小宝第$k$大的数。

【输出格式】

输入包含若干行,对于每个询问,输出一行一个整数表示第$k$大的数字。

【样例输入】

8 3
I 1
I 2
I 3
Q
I 5
Q
I 4
Q

【样例输出】

1
2
3

【样例说明】

共8轮游戏,询问的时第3大的数字。

先写下3个数字:1,2,3;

询问第3大的数字,答案为1;

写下数字5,数字序列为1,2,3,5;

询问第3大的数字,答案为2;

写下数字4,数字序列为1,2,3,5,4;

询问第3大的数字,答案为3。

【数据范围与约定】

对于30%的数据,$1\leq k\leq n\leq 1000$;

对于100%的数据,$1\leq k\leq n\leq 10^6$。