书籍采购
该比赛已结束,您无法在比赛模式下递交该题目。您可以点击“在题库中打开”以普通模式查看和递交本题。
题目描述
小 A 计划在一家大型书店购买书籍,准备参加学校的读书节。他携带了 张书店赠送的购书卡。
书店的书架上摆放了 本书籍,按照特定顺序排列,小 A 需要按此顺序购买。其中第 本书的价格为 元。
在收银员扫码每本书的价格的过程中,小 A 可以:
- 随时请收银员停下来,使用一张购书卡支付这一批扫码的书籍,支付的范围是从上次支付后到当前的所有书籍。
- 所使用的购书卡,需确保购书卡面值足够支付这部分书籍的总价。
- 如果使用的购书卡面值超过所需费用,店家不会退还差额,且不能用于下一批书籍的支付,该张购书卡使用后,会被书店回收。
请帮助小 A 计算,在购买完所有 本书籍后,他能剩余的购书卡面值总和最大是多少,如果无论如何都无法完成所有购买,输出 。
输入格式
第一行包含两个整数 和 ,分别表示购书卡数量和书籍数量。 接下来 行,每行一个整数,表示一张购书卡的面值。 接下来 行,每行一个整数,表示按顺序排列的每本书的价格 。
输出格式
输出一行,包含一个整数:小 A 在购买完所有书籍后能剩余的购书卡面值总和最大值,若无法完成所有购买,输出 。
样例输入 1
3 6
12
15
10
6
3
3
2
3
7
样例输出 1
12
样例输入 2
6 6
15
20
25
10
30
20
5
10
15
10
20
25
样例输出 2
35
样例输入 3
3 7
90
30
20
15
25
10
20
30
25
15
样例输出 3
-1
样例说明
样例 1 说明: 小 A 有三张购书卡,面值分别为 、 和 ,需要按顺序购买价格为 、、、、 和 的书籍。 一种最优方案是:
- 使用面值 的购书卡支付前两本书( )。
- 使用面值 的购书卡支付剩余四本书( )。
- 剩余面值 的购书卡。
因此,最大剩余面值总和为 。
数据范围
- 对于 的数据,满足 。
- 对于 的数据,满足 ,,,购书卡面值范围为 。