【USACO 2018 JAN Platinum】救生牛

问题描述
农夫约翰为他的奶牛们开了一个游泳池。简单起见,泳池每天在时刻 1 开门,一直到时刻 10^9才关闭。
为确保奶牛的安全,他雇佣了 N只救生牛,分别编号为 1,2,…,N。每只救生牛都有固定的工作时段。救生牛 i(1≤i≤N)的工作时段可以用两个整数 si,t​i​​ 描述,表示救生牛 i 的工作时段为 (si,ti] 。例如,一个救生牛的 si=4,ti=7,则它在时刻 4+1=5 开始工作,在时刻 7 结束工作,共覆盖三个时刻(不含起始时刻,含结束时刻)。
现在约翰难以负担救生牛的高额工资,他需要解雇恰好 K头救生牛。求剩余的救生牛最多能够覆盖多少时刻(某个时刻被覆盖当且仅当这时有至少一个救生牛在工作)。

解:
定义状态f[i][j]表示前i个删去j个

posted @ 2019-10-05 11:59  ALEZ  阅读(215)  评论(0编辑  收藏  举报