#815. 道具商店

道具商店

题目描述

道具商店里有 nn 件道具可供挑选。第 ii 件道具可以为玩家提升 aia_i 点攻击力,购买它需要花费 cic_i 枚金币。每件道具至多购买一次。现在你有 kk 枚金币,问在不超过金币预算的前提下,最多可以提升多少点攻击力。

换言之:在给定的 nn 件物品中选取若干不重复的物品,使得这些物品的总花费不超过 kk,并使得它们的攻击力增益总和最大化。输出该最大增益。

输入格式

第一行包含两个正整数 n,kn,k —— 道具数量与你拥有的金币数。

接下来 nn 行,每行包含两个正整数 ai,cia_i,c_i —— 第 ii 件道具提升的攻击力与所需金币数。

输出格式

输出一行,一个整数,表示在金币不超过 kk 的前提下能获得的最大攻击力提升总和。

样例输入 1

3 5
99 1
33 2
11 3

样例输出 1

132

样例输入 2

4 100
10 1
20 11
40 33
100 99

样例输出 2

110

说明

样例解释

  • 第一个样例中,选择第 11 件(a1=99,c1=1a_1=99,c_1=1)和第 22 件(a2=33,c2=2a_2=33,c_2=2)的总花费 1+2=3k1+2=3\le k,攻击力增益为 99+33=13299+33=132,为最优。
  • 第二个样例中,可以选择第 11 件与第 44 件,使得总花费 1+99=100k1+99=100\le k,增益 10+100=11010+100=110,为最优解之一。

数据范围

  • 对于 60%60\% 的测试点,保证 1k5001\le k\le 5001ci5001\le c_i\le 500
  • 对于所有测试点,保证 1n5001\le n\le 5001k1091\le k\le 10^{9}1ai5001\le a_i\le 5001ci1091\le c_i\le 10^{9}