#P2367. fruit picking

    ID: 1143 传统题 2000ms 256MiB 尝试: 16 已通过: 2 难度: 9 上传者: 标签>数据结构树状数组2022新生第一次入队赛

fruit picking

题目描述

农夫JCJC的果园里有一排长度为 n n 的神奇果树,当摘下一颗果实的时候就会自动长出一颗果实,今日农夫JCJC准备采集 m m 个果子,但他已经厌烦了日常采摘,觉得一个个的采摘太无趣了,他想要这个过程变得 interstring interstring 一点,于是他决定每次在从左往右果实个数大于 x x 个的第 k k 棵果树上摘一颗果子,但他只想摘果子,不想数数,所以他现在想要知道每次该摘的那棵果树上有多少颗果子

输入格式

1 1 行为三个正整数 n nm m ,代表果树棵数和今日准备采集的果实数。

2 2 行为 n n 个整数 a1...an a_1 ... a_n ,代表从左往右每棵果树上的果实数。

接下来 m m

每行为两个正整数 x x k k ,代表果实个数大于 x x 个和满足前面条件的第 k k 棵果树。

(1  n  105)( 1~\leq~n~\leq~10^5 ) (1  m  105)(1~\leq~m~\leq~10^5 ) (1  ai  109)(1~\leq~a_i~\leq~10^9 ) (1  x  109)(1~\leq~x~\leq~10^9 ) (1  k  106)(1~\leq~k~\leq~10^6 )

输出格式

输出共 m m

每行输出一个整数,代表该次该摘的那棵果树上有多少颗果子。

如果找不到从左往右果实个数大于 x x 个的第 k k 棵果树,则输出 1 -1

样例

10 5 
13 11 4 9 7 3 2 6 8 1 
5 4 
9 2 
7 4 
13 1 
1 10
7 
11 
8 
-1 
-1

提示

样例解释:样例中果树分布是:13,11,4,9,7,3,2,6,8,1 {13,11,4,9,7,3,2,6,8,1}

第一个查询让找果实个数大于 5 5 的第 4 4 棵果树,则为第 5 5 棵果树,上面有 7 7 个果实,所以输出 7 7

​第四个查询让找果实个数大于 13 13 的第 1 1 棵果树,果园里没有果实个数大于 13 13 的果树,所以输出 1 -1

​第五个查询让找果实个数大于 1 1 的第 10 10 棵果树,果园里果实个数大于 1 1 的果树只有 9 9 棵,所以输出 1 -1

by JC