#9973. 区间中位数

    ID: 9973 传统题 1000ms 256MiB 尝试: 1 已通过: 1 难度: 10 上传者: 标签>主席树可持久化线段树离散化中位数

区间中位数

题目描述

给定一个长度为 nn 的整数数组 aa。有 qq 次询问,每次给出 l,rl,r,求区间 [l,r][l,r] 的中位数。

将区间内的 len=rl+1len=r-l+1 个数从小到大排列,本题规定中位数为排列后的第 len2\left\lceil\frac{len}{2}\right\rceil 个数。特别地,当区间长度为偶数时,取中间两个数中较小的一个。

输入格式

第一行包含两个整数 n,qn,q
第二行包含 nn 个整数 a1,a2,,ana_1,a_2,\ldots,a_n
接下来 qq 行,每行包含两个整数 l,rl,r

输出格式

对于每次询问,输出一行一个整数,表示区间中位数。

6 4
4 1 7 1 9 -2
1 6
2 5
2 4
3 3
1
1
1
7

数据范围与提示

  • 1n,q2×1051 \le n,q \le 2\times 10^5
  • 109ai,x109-10^9 \le a_i,x \le 10^9
  • 1lrn1 \le l \le r \le n