S40404.4-4 调度机群

传统题 时间 1000 ms 内存 256 MiB 3 尝试 0 已通过 0

4-4 调度机群

调度机群

47号坑道第三层的入口处,立着一排休眠的机械守卫——它们不是Zero的,是反抗军留下的旧型号,被Zero俘获后重新编程。Echo说如果能重新激活它们,就能让它们反过来对付Zero的部队。

"但重新激活需要匹配。"Echo飘到第一个守卫前,投影被守卫胸口的蓝光染成了淡青色,"每个守卫有处理能力和耐久度两个参数。每个激活任务也有对应的难度和强度要求。只有守卫的参数同时大于等于任务要求,才能成功激活。"

"那就配对。"CC说,"难的任务给强的守卫,简单的任务给弱的守卫。"

"对。"你说,"但不能浪费——如果一个强守卫能做简单的任务,就不应该浪费它做难的任务。把好钢用在刀刃上。"

"就像……"CC想了想,"量力而行。让刚好够格的守卫上,留更强的对付更难的。"

"对。"

你开始写。先把任务从难到易排好,然后维护一个名册——所有能胜任当前难度的守卫都在名册里,从中选耐久度最低的那个分配给当前任务。如果名册空了,说明这个任务没人能接。

屏幕上跳出了分配结果。十个任务,八个守卫——八个成功匹配,两个守卫因为耐久度不够被跳过。

"成了。"你说。

CC拍了拍第一个被激活的守卫。它的光学传感器亮起来,发出一声低沉的嗡鸣,然后转向你们——停顿了一秒,像是在确认身份。

"反抗军编号47。"守卫的声音像是从很远的地方传来,"欢迎回来。"

CC愣了一下,然后笑了:"它认得我。"


题目描述

nn 个任务,mm 个机器。每个任务有难度 aia_i 和强度要求 bib_i。每个机器有处理能力 xjx_j 和耐久度 yjy_j。只有当 xjaix_j \ge a_iyjbiy_j \ge b_i 时,机器才能执行任务。求最多能完成多少任务。

输入格式

n,mn, m。然后 nn 行任务参数,mm 行机器参数。

输出格式

最多完成的任务数。

输入样例

5
1 3
2 4
3 5
4 2
5 1

输出样例

1 0

提示

  • 任务按难度降序处理。
  • 用有序集合维护能胜任当前难度的机器,选耐久度最低的分配。
  • 如果集合为空,任务无法完成。

核心区门前立着一面4×4的开关面板。每个开关有两种状态——凸出或凹陷。按一个开关,会同时翻转它所在的整行和整列。

"目标是让所有开关都凸出。"Echo说,"但按开关的顺序没有规律。最后一个开关按下去的时候,可能会把前面已经弄好的又翻回去。"

"那就试所有可能。"你说,"16个开关,每个有两种状态——总共六万多种按法。对终端来说不多。""

CC挑眉:"你刚才还说'更复杂'?"

"复杂是指规则复杂。"你蹲下来,把终端连上面板的接口,"但规模小——16个开关,穷举就行。"

在线编程 IDE

建议全屏模式获得最佳体验