背包问题
时间限制:C/C++/Rust/Pascal 1秒,其他语言2秒
空间限制:C/C++/Rust/Pascal 256 M,其他语言512 M
64bit IO Format: %lld

题目描述

牛妹家里有个物品,第个物品体积为v_i,价值为w_i。牛妹有一个容积无穷大的背包,背包可以装任意多的物品,没有限制。

牛妹要去深山中度假,为了在旁人眼中显得自己准备得很充分,牛妹想在背包中装入总体积不小于的一些物品。如果装入的物品过于贵重,路上如果遇到强盗、劫匪、山贼等就很亏。所以牛妹想知道总体积不小于的前提下,物品的总价值最小是多少。

输入描述:

第一行两个整数,表示物品的数量和总体积需求。
接下来行,每行两个整数v_i,w_i,表示第种物品的体积和价值。保证所有物品总体积不小于
。保证所有物品总体积不小于

输出描述:

输出一个整数,表示答案。
示例1

输入

复制
3 6
2 5
3 4
4 3

输出

复制
7

说明

选择第2和第3个物品。
示例2

输入

复制
6 10
2 4
3 4
4 5
5 11
6 10
7 11

输出

复制
15

说明

选择第3和第5个物品,或者第2和第6个物品。