#P16768. [GKS 2020 #F] Metal Harvest
[GKS 2020 #F] Metal Harvest
题目描述
你负责部署机器人从附近的小行星上收获 Kickium。机器人不是为团队合作而设计的,因此任何时刻只能有一个机器人在工作。一个机器人单次部署最多可以连续工作 个时间单位,之后必须返回校准,无论这段时间内它实际用于收割的时间有多少。收割只能在特定的时间区间内进行,这些时间区间互不重叠。给定 以及允许收割的时间区间,请问覆盖所有可收割时间所需的最少机器人部署次数是多少?
输入格式
输入的第一行给出测试用例的数量 。接下来有 个测试用例。
每个测试用例的第一行给出两个空格分隔的整数 和 :允许收割的时间区间数量,以及机器人单次部署后返回校准前可连续工作的最大时长。
接下来的 行,每行包含一对空格分隔的整数 和 :第 个区间的开始时间和结束时间。请注意,区间不包含 时刻本身,因此例如区间 的时长为 个时间单位。
输出格式
对于每个测试用例,输出一行,格式为 Case #x: y,其中 是测试用例编号(从 开始), 是所需的最少机器人部署次数,使得每个区间内都有机器人在该时间段内进行收割。
2
3 5
1 5
10 11
8 9
3 2
1 2
3 5
13 14
Case #1: 2
Case #2: 3
提示
在样例 #1 中,我们在时刻 部署机器人,它将在 时段内可用,但实际只在 时段内进行收割。之后我们在时刻 再次部署机器人,它将在 时段内可用,这次部署覆盖了剩余的两个区间 和 。这里存在多种最优策略,例如我们也可以在时刻 部署第二个机器人,它会覆盖 时段,从而同样收割区间 和 。
在样例 #2 中,我们在时刻 部署机器人,它将在 时段内可用,但实际只收割 (因为 不属于任何区间)。之后我们在时刻 部署机器人,它将在 时段内可用,并在该时段内收割区间 。第三次部署在时刻 ,机器人将在 时段内可用,但只收割区间 。因此需要 次部署才能覆盖所有区间。
限制条件
。
所有 互不相同。
对于任意两个区间 和 ,若 ,则 。
测试集 1
。
。
。
测试集 2
最多 个测试用例满足 。
其余测试用例满足 。
。
。
翻译由 DeepSeek V4 Pro 完成