#3750. 任务

任务

题目描述

今天某公司有 MM 个任务需要完成。

每个任务都有相应的难度级别和完成任务所需时间。

ii 个任务的难度级别为 yiy_i,完成任务所需时间为 xix_i 分钟。

如果公司完成此任务,他们将获得(500×xix_i+2×yiy_i)美元收入。

该公司有 NN 台机器,每台机器都有最长工作时间和级别。

如果任务所需时间超过机器的最长工作时间,则机器无法完成此任务。

如果任务难度级别超过机器的级别,则机器无法完成次任务。

每台机器一天内只能完成一项任务。

每个任务只能由一台机器完成。

请为他们设计一个任务分配方案,使得该公司能够最大化他们今天可以完成的任务数量。

如果有多种解决方案,他们希望选取赚取利润最高的那种。

输入格式

输入包含几个测试用例。

对于每个测试用例,第一行包含两个整数 N 和 M,分别代表机器数量和任务数量。

接下来 NN 行,每行包含两个整数xi,yi x_i,y_i,分别代表机器最长工作时间和机器级别。

再接下来 MM 行,每行包含两个整数xi,yi x_i,y_i,分别代表完成任务所需时间和任务难度级别。

输出格式

对于每个测试用例,输出两个整数,代表公司今天可以完成的最大任务数以及他们将获得的收入。

样例

1 2
100 3
100 2
100 1
1 50004

数据范围

  • 1N,M1000001≤N,M≤100000
  • 0<xi<14400<x_i<1440
  • 0yi1000≤y_i≤100

来源

  • Multi-Univ. Training
  • HDUOJ4864
  • 算法竞赛进阶指南