QOJ.ac

QOJ

Time Limit: 2 s Memory Limit: 128 MB Total points: 100

# 9092. 由乃打扑克

Statistics

由乃不太会打扑克

所以她出了一个数据结构题

给你一个长为 $n$ 的序列 $a$,需要支持 $m$ 次操作,操作有两种:

  1. 查询区间 $[l,r]$ 的第 $k$ 小值。
  2. 区间 $[l,r]$ 加上 $k$。

输入格式

一行两个整数 $n,m$。

接下来一行 $n$ 个整数, 第 $i$ 个整数表示 $a_i$。

接下来 $m$ 行,每行四个数 $opt,l,r,k$,其中 $opt$ 代表是哪种操作。

输出格式

对于每个询问输出一个数表示答案,如果无解输出 $-1$。

样例数据

样例输入

1 1
1
1 1 1 1

样例输出

1

子任务

Idea:nzhtl1477,

Solution:nzhtl1477( $O( msqrtn( \Delta + logn ) )$ ) solution,ccz181078( $O( msqrt(nlogn) )$ ) solution

Code:nzhtl1477( $O( msqrtn( \Delta + logn ) )$ ) code,ccz181078( $O( msqrtnlogn )$ ) code

,Data:nzhtl1477

$1\leq n,m\leq 10^5$,$-2\times 10^4\leq $ 每次加上的数和原序列的数 $\leq 2\times 10^4$。