题目名称 3913. K小数(简化)
输入输出 kthnum.in/out
难度等级
时间限制 1000 ms (1 s)
内存限制 256 MiB
测试数据 10
题目来源 Gravatarsywgz 于2023-09-15加入
开放分组 全部用户
提交状态
分类标签
分享题解
通过:3, 提交:8, 通过率:37.5%
Gravatar┭┮﹏┭┮ 100 0.300 s 4.36 MiB C++
Gravatargao 100 1.510 s 9.62 MiB C++
Gravatar小金 100 1.558 s 5.85 MiB C++
GravatarHorPot 10 9.123 s 7.14 MiB C++
GravatarHorPot 10 9.128 s 19.98 MiB C++
Gravatar┭┮﹏┭┮ 0 0.298 s 3.44 MiB C++
Gravatar刘昊哲 0 5.157 s 15.54 MiB C++
Gravatar刘昊哲 0 5.204 s 15.50 MiB C++
关于 K小数(简化) 的近10条评论(全部评论)
树状数组二分求第k小数
Gravatar┭┮﹏┭┮
2023-09-15 21:09 1楼

3913. K小数(简化)

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

【题目描述】

给定一个数列 $A$,请实现如下两种操作:

1. 将 $A_k$ 的值修改为 $d$。

2. 查询整个序列中第 $K$ 小的值。

【输入格式】

第一行为一个整数 $n(0\le n\le 1000000)$,表示数列 $A$ 的大小。

第二行有 $n$ 个整数,表示序列 $A$ 各项的初始值。

第三行为一个整数 $m(0\le m\le 1500000)$,表示操作数。

下面 $m$ 行,每行描述一个操作:

$\mathrm{CHANGE}$ $k$ $d$(表示将 $A_k$ 的值修改为 $d$,$1≤k≤n$,$d$ 为整数)

$\mathrm{SUM}$ $k$(表示查询整个序列中第 $K$ 小的值)

【输出格式】

对于每一个询问,输出查询的结果。

【样例输入】

4
1 4 2 3
3
SUM 2
CHANGE 2 50
SUM 4

【样例输出】

2
50

【样例说明】

第一次操作,第二小的是 2

第二次操作,序列变为 1 50 2 3

第三次操作,第四小的是 50

【数据规模与约定】

10% 的数据 $1\le n\le 1000,1\le m\le 1000$;

50% 的数据 $1\le n\le 10000,1\le m\le 10000$;

100% 的数据 $1\le n\le 100000,1\le m\le 100000$;

对于每个 $i$ ($1 <= i <= n$), $A_i$ $<=$ $10^5$

【提示】