#L4182. [USACO18JAN] Lifeguards P

    ID: 898 传统题 文件IO:lifeguards 1000ms 256MiB 尝试: 0 已通过: 0 难度: (无) 上传者: 标签>动态规划 DP单调队列枚举队列USACO2018

[USACO18JAN] Lifeguards P

P4182 [USACO18JAN] Lifeguards P

题目描述

Farmer John 为他的奶牛们开设了一个游泳池,认为这将帮助它们放松并产更多的奶。

为了确保安全,他雇佣了 NN 头奶牛作为救生员,每头奶牛的班次覆盖一天中的某个连续时间段。为简单起见,游泳池每天从时间 00 开放到时间 10910^9,因此每个班次可以用两个整数描述,分别表示奶牛开始和结束其班次的时间。例如,一头救生员从时间 t=4t = 4 开始到时间 t=7t = 7 结束,覆盖了 33 个单位的时间(注意端点表示时间点)。

不幸的是,Farmer John 多雇佣了 KK 名救生员,超出了他的资金支持范围。鉴于他必须解雇恰好 KK 名救生员,剩下的救生员的班次能够覆盖的最长时间是多少?如果至少有一名救生员在场,则某个时间段被视为被覆盖。

输入格式

输入的第一行包含 NNKKKN100,000K \leq N \leq 100,0001K1001 \leq K \leq 100)。接下来的 NN 行每行描述一名救生员,用两个范围在 01090 \ldots 10^9 的整数表示该救生员班次的开始和结束时间。所有端点都是唯一的。不同救生员的班次可能会重叠。

输出格式

请输出一个数字,表示如果 Farmer John 解雇 KK 名救生员后,剩下的救生员的班次能够覆盖的最长时间。

输入输出样例 1

3 2
1 8
7 15
2 14
12

说明/提示

在这个例子中,Farmer John 应该解雇覆盖 181 \ldots 87157 \ldots 15 的救生员。