#D0792. 压缩数列

压缩数列

题目描述

小 D 的计算机存储空间有限,他将一个长数列用压缩方式存储:记录每种数值出现了多少次,而不是逐个记录每个数。

具体来说,压缩记录由 NN 行描述,每行两个整数 aia_ibib_i,表示数值 aia_i 出现了 bib_i 次。

现在,小 D 想知道:如果将压缩记录还原为完整数列并从小到大排序,KK 小的数是多少?

输入格式

输入共 N+1N + 1 行。

第一行,两个整数 NNKK,分别表示压缩记录的行数和需要查找的第 KK 小。

接下来 NN 行,每行两个整数 aia_ibib_i,表示数值 aia_i 出现了 bib_i 次。

输出格式

输出共一行,包含一个整数,表示第 KK 小的数值。

3 4
1 3
2 2
3 3
2
2 5
10 3
20 2
20
4 1
5 100
2 50
8 30
1 10
1

样例解释

对于样例 1:还原数列 [1,1,1,2,2,3,3,3][1,1,1,2,2,3,3,3] 已有序,第 44 小为 22

对于样例 2:还原数列 [10,10,10,20,20][10,10,10,20,20],第 55 小为 2020

对于样例 3:输入不按顺序(5,2,8,15,2,8,1),排序后数值从小到大依次为 1,2,5,81,2,5,811 出现 1010 次,第 11 小即为 11

数据规模与约定

子任务 分值 限制
11 3030 N100N \le 100,数字出现的总次数 104\le 10^4
22 N100N \le 100aia_i 已从小到大有序
33 4040 N105N \le 10^5

对于 100%100\% 的数据,1N1051 \le N \le 10^51ai,bi1091 \le a_i, b_i \le 10^91K1091 \le K \le 10^9KK 不超过总元素数。