任务匹配(match)
题目描述
有 名同学和 个训练任务。
第 名同学的能力值为 ,第 个训练任务的难度为 。
一名同学最多只能完成一个任务,一个任务也最多只能由一名同学完成。
如果某名同学的能力值不小于某个任务的难度,那么这名同学就可以完成这个任务。
也就是说,当:
时,同学 可以完成任务 。
现在请你安排同学完成任务,使完成的任务数量尽可能多。
如果有多种安排方案都能完成最多任务,请在这些方案中,使被安排同学的能力值总和尽可能小。
请输出:
- 最多可以完成多少个任务;
- 在完成任务数量最多的前提下,被安排同学能力值总和的最小值。
输入格式
第一行包含两个整数 ,分别表示同学数量和任务数量。
第二行包含 个整数:,表示每名同学的能力值。
第三行包含 个整数:,表示每个任务的难度。
输出格式
输出一行两个整数,分别表示最多完成的任务数量,以及在最多完成任务数量前提下,被安排同学能力值总和的最小值。
输入输出样例 #1
输入 #1
5 4
3 8 5 10 6
4 6 7 2
输出 #1
4 22
样例解释 #1
一种最优安排为:
- 能力值为 的同学完成难度为 的任务;
- 能力值为 的同学完成难度为 的任务。
- 能力值为 的同学完成难度为 的任务;
- 能力值为 的同学完成难度为 的任务;
最多可以完成 个任务,被安排同学能力值总和为:
可以证明这是最优的情况。
输入输出样例 #2
输入 #2
3 5
2 4 6
1 3 5 7 9
输出 #2
3 12
样例解释 #2
可以完成的任务最多为 个。
一种最优安排为:
- 能力值为 的同学完成难度为 的任务;
- 能力值为 的同学完成难度为 的任务;
- 能力值为 的同学完成难度为 的任务。
被安排同学能力值总和为:
输入输出样例 #3
输入 #3
4 3
1 1 1 1
5 6 7
输出 #3
0 0
样例解释 #3
很明显,一个都完成不了。
数据范围与约定
对于所有测试数据,保证:
$$1 \le n,m \le 2\times 10^5,\quad 1 \le a_i,b_i \le 10^9 $$| 测试点 | 分值 | 特殊性质 | |||
|---|---|---|---|---|---|
| 无 | |||||
| 无 | |||||
特殊性质 :保证输入的 和 都已经按非递减顺序给出。
特殊性质 :保证 。
特殊性质 :保证所有同学都能完成所有任务,即 。
京公网安备11010802045784号