0796 ABC358_D Souvenirs | OJ题库 | CODE STUDY
CODE STUDY
Programming Practice Platform

欢迎回来

0796

ABC358_D Souvenirs

Easy 时间限制 1000 ms 内存限制 262144 KB
贪心

题目详情

返回题库

题目描述

AtCoder 乐园的一家纪念品商店出售N个盒子。

这些盒子的编号是1到N,盒子i的价格是$A_i$日元,里面有​$A_i$块糖果。

高桥想从N个盒子中买M个,然后给1,2,…,M个人每人一盒。

在这里,他想买的盒子要满足以下条件:

  • 对于每个i=1,2,…,M人,i都能得到至少装有$B_i$粒糖果的盒子。

注意,不允许给一个人多个盒子,也不允许给多个人同一个盒子。

求是否可能买到满足条件的M盒,如果可能,求高桥需要支付的最小总金额。

输入描述

第一行N和M

第二行N个数$A_1,A_2.......A_N$

第三行M个数$B_1,B_2.......B_N$

数据范围:

  • 1≤M≤N≤2×$10^5$
  • 1≤$A_i,B_i$​≤$10^9$

输出描述

如果可以买到满足条件的M盒,打印高桥需要支付的最小总金额。否则,打印−1

测试样例

样例支持多行内容展示
样例1
输入
4 2
3 4 5 4
1 4
输出
7

样例2
输入
3 3
1 1 1
1000000000 1000000000 1000000000
输出
-1
样例3
输入
7 3
2 6 8 9 5 1 11
3 5 7
输出
19
editor.py

提交前会先自动运行样例。只有样例全部通过,才会进入后端正式判题。