/ Vijos / 题库 /

转手次数

转手次数

时间限制:1秒  内存限制:256M


【题目描述】

  小H怀揣一些硬币,打算到商店买价值 \(M\) 元的生活物品。在商店买东西,不可避免会出现硬币的转手的情况,即他付出超过 \(M\) 元的硬币,商店老板再找回一些硬币。为提高效率,小H想要转手次数最少,即他付出的硬币数与老板找回的硬币数之和最小。

  已知有 \(N\) 种不同的硬币流通,面值分别为 \(v_1,v_2,…,v_N\)(单位:元),小H怀揣的硬币,面值为 \(v_i\) 的有 \(c_i\) 枚,我们假设店主每种面值的硬币都有无限多,并总按最优秀方案找零。

【输入格式】

  第一行包含两个整数 \(N\) 与 \(M\),它们的意义如题目描述。
  第二行包含 \(N\) 个整数:\(v_1,v_2,…,v_N\),其中 \(v_i\) 表示第 \(i\) 种硬币的面值。
  第三行包含 \(N\) 个整数:\(c_1,c_2,…,c_N\),其中 \(c_i\) 表示小H拥有第 \(i\) 种硬币的数量。

【输出格式】

  一个整数,表示最优方案的转手次数,如无解则输出-1。

【输入输出样例】

 Input

3 70
5 25 50
5 2 1

 Output

3

【输入输出样例说明】

  小H付出面值 25 元的硬币 1 枚,50 元的硬币 1 枚;商店老板找回 1 枚 5 元的硬币,换手硬币数量为 3。

【数据限制】

  对于 \(100\%\) 的数据,\(0≤M≤10000\),\(1≤N≤100\),\(1≤v_i≤120\),\(1≤c_i≤10000\)。

【来源】

  Mr.he

信息

ID
1861
难度
9
分类
动态规划 | 背包 点击显示
标签
递交数
4
已通过
1
通过率
25%
被复制
4
上传者