题库/Y1172

#Y1172. 楼间跳跃

    传统题 难度: 普及+ 标签>一本通交换论证与贪心反例priority_queue与比较方向高精度加法与进位高精度乘低精度整数
时间限制2000 ms
内存限制256 MiB
通过率—0 / 0 次提交
题目描述 查看题解 开始编程Alt+E

Y1172 · 楼间跳跃

退出在线编程模式
普及+ 读懂题意,让每一次思考成为成长。
时间限制2000 ms
内存限制256 MiB
通过率—0 / 0 次提交

题目描述

在一条街道上有nn栋楼,第ii栋有hih_i层,每层都有价值为viv_i的物品。 Lyra可以花费一单位时间在同一栋楼中向上或向下走一层。特别地,每栋楼里都有一个大滑梯,只能从顶楼通往一楼,所以如果Lyra在顶层,可以花费一单位时间通过滑梯到达一楼(注意只有在顶楼才可以使用滑梯)。 Lyra还可以在不同的楼之间跳跃,即花费一单位时间从当前楼移动到相邻楼的同层,如果相邻楼没有Lyra当前位置高,则会落到相邻楼的顶层。 初始时Lyra在第一栋楼的顶层,她有mm单位时间可以移动,Lyra拿去物品不需要时间,且一个物品被拿一次之后就会消失。 Lyra想知道她能获得的总价值最多是多少?

输入

第一行两个正整数n,mn,m。 以下nn行每行两个整数表示hih_i和viv_i。 提示:输入数据较大,请采用快速的读入方式。

输出

输出一行一个整数表示最大的总价值。

输入样例

3 3
2 1
1 5
3 4

输出样例

14

提示

【数据规模及约定】 对于20%的数据,Σhi≤20Σh_i≤20。 对于另外10%的数据,vi=1v_i=1。 对于另外30%的数据,Σhi≤1000Σh_i≤1000。 对于另外20%的数据,n,hi≤105n,h_i≤10^5。 对于100%的数据,n,hi≤106n,h_i≤10^6。

评测数据说明

本题使用按题意独立构造、以独立程序核对的训练数据及公开样例,共6个测试点,非原站或官方原始数据。总分100分。