#1323. 存钱罐
存钱罐
存钱罐
题目描述
小蓝现在想用钱买一个纪念品,他的钱存在一个存钱罐里面(如果想要把存钱罐里面的钱拿出来就必须打碎罐子),但是小蓝忘记记存钱罐里面到底存了多少钱,小蓝想要知道存钱罐里面最少有多少钱。
我们知道空存钱罐和当前存钱罐的重量,还有每种钱对应的价值和重量,请帮小蓝完成这个任务。
输入格式
第一行是 和 ,表示空罐和当前存钱罐的重量,。
第二行有一个整数 ()表示硬币的种类。
接下来是 行,每行两个数 和 (,)。 表示硬币面值, 表示硬币重量。
输出格式
输出一个数,代表存钱罐最少的钱。如果结果不存在,输出 -1。
样例输入
10 110
2
1 1
30 50
样例输出
60
说明/提示
样例解释:空罐重 10,现在重 110,所以里面的硬币总重量是 。
有两种硬币:面值 1 重 1、面值 30 重 50。凑出总重量 100 的最省方案是放 2 枚面值 30 的硬币(重量 ,价值 ),所以输出 60。
每种硬币的数量不限,但必须恰好凑出总重量;凑不出来就输出 -1。