QOJ.ac

QOJ

時間限制: 1 s 記憶體限制: 256 MB 總分: 100

#1208. 钥匙

统计

你了解 Just Odd Inventions 公司吗?这家公司的业务是进行“纯粹奇妙的发明 (just odd inventions)”。在此简称为 JOI 公司。

JOI 公司有 $N$ 名员工,编号从 1 到 $N$。所有员工都在时刻 0 到时刻 $M$ 之间工作。在时刻 0 和时刻 $M$,所有员工都必须在公司内。

今天,每位员工恰好外出一次。员工 $i$ ($1 \le i \le N$) 在时刻 $S_i$ 离开公司,并在时刻 $T_i$ 返回公司。不会有两名或两名以上的员工在同一时刻进出公司。

JOI 公司的入口处有一扇大门,员工只能从这里进出公司。门上有一把锁,锁的状态要么是开着的,要么是关着的。在公司内部可以自由地开关锁,但在公司外部,只有持有合用钥匙的人才能开关锁。在时刻 0,门锁是关着的。

每位员工在返回公司时,必须能够进入公司。也就是说,对于所有 $i$ ($1 \le i \le N$),员工 $i$ 必须持有合用钥匙,或者在时刻 $T_i$ 时门锁是开着的,至少满足其中一个条件。当员工返回公司时,以及持有合用钥匙的员工离开公司时,可以选择是否锁门。没有合用钥匙的员工离开公司时不能锁门。

JOI 公司的社长决定将合用钥匙交给 $N$ 名员工中的 $K$ 人。为了避免合用钥匙丢失,员工之间不能互相转交钥匙。此外,由于 JOI 公司社长非常重视工作效率,员工除了在自己进出公司时,不能开关门锁。

出于安全考虑,社长希望在工作时间 $M$ 内,门锁处于关闭状态的总时长尽可能长。

题目描述

给定员工的进出信息以及要分发的合用钥匙数量,请编写一个程序,计算在合理管理门锁开关的情况下,门锁处于关闭状态的总时长的最大值。

输入格式

从标准输入读取以下数据:

  • 第 1 行包含三个整数 $N, M, K$,以空格分隔。这表示 JOI 公司有 $N$ 名员工,所有员工在时刻 0 到时刻 $M$ 之间工作,且将合用钥匙交给 $N$ 人中的 $K$ 人。
  • 接下来的 $N$ 行中的第 $i$ 行 ($1 \le i \le N$) 包含两个整数 $S_i, T_i$,以空格分隔。这表示员工 $i$ 在时刻 $S_i$ 离开公司,并在时刻 $T_i$ 返回公司。

输出格式

在标准输出中,输出一行一个整数,表示在合理管理门锁开关的情况下,门锁处于关闭状态的总时长的最大值。

数据范围

所有输入数据满足以下条件:

  • $1 \le N \le 2000$
  • $1 \le M \le 1\,000\,000\,000$
  • $1 \le K < N$
  • $0 < S_i < T_i < M$ ($1 \le i \le N$)
  • 对于任意 $i, j$ ($1 \le i \le N, 1 \le j \le N, i \neq j$),满足 $S_i \neq S_j, S_i \neq T_j, T_i \neq T_j$

子任务

子任务 1 [10 分]

  • 满足 $N \le 20$
  • 满足 $M \le 1\,000\,000$

子任务 2 [90 分]

  • 无额外限制。

样例

样例 1

输入:

4 20 2
3 11
5 15
6 10
12 18

输出:

13

说明 1

在该样例中,JOI 公司有 4 名员工,其中 2 人持有合用钥匙。若将钥匙交给员工 2 和员工 4,并按以下方式操作,门锁关闭的总时长为 13:

  • 时刻 0,门锁关闭。
  • 时刻 3,员工 1 离开公司。由于员工 1 没有钥匙,门锁无法关闭。
  • 时刻 5,员工 2 离开公司,关闭门锁。
  • 时刻 6,员工 3 离开公司。由于员工 3 没有钥匙,门锁无法关闭。
  • 时刻 10,员工 3 返回公司。保持门锁开启。
  • 时刻 11,员工 1 返回公司,关闭门锁。
  • 时刻 12,员工 4 离开公司,关闭门锁。
  • 时刻 15,员工 2 返回公司,关闭门锁。
  • 时刻 18,员工 4 返回公司,关闭门锁。
  • 直到时刻 20,门锁保持关闭。

不存在使门锁关闭总时长超过 13 的方法,因此输出 13。

样例 2

输入:

20 100000 8
29930 89724
56133 70462
28063 78568
32483 64351
9410 20176
55809 62944
32450 85190
73536 73966
20452 78868
45458 63484
8286 47425
76018 81622
16736 49308
85383 94641
25100 40002
22158 22821
23508 41781
61709 98882
58110 78431
28448 89247

输出:

72454

Editorials

IDTypeStatusTitlePosted ByLast UpdatedActions
EditorialOpen Official EditorialQingyu- Download
#362EditorialOpen题解jiangly2025-12-14 07:20:46View

Discussions

About Discussions

The discussion section is only for posting: General Discussions (problem-solving strategies, alternative approaches), and Off-topic conversations.

This is NOT for reporting issues! If you want to report bugs or errors, please use the Issues section below.

Open Discussions 0
No discussions in this category.

Issues

About Issues

If you find any issues with the problem (statement, scoring, time/memory limits, test cases, etc.), you may submit an issue here. A problem moderator will review your issue.

Guidelines:

  1. This is not a place to publish discussions, editorials, or requests to debug your code. Issues are only visible to you and problem moderators.
  2. Do not submit duplicated issues.
  3. Issues must be filed in English or Chinese only.
Active Issues 0
No issues in this category.
Closed/Resolved Issues 0
No issues in this category.