Description
一天有T(1≤T≤10^6)个时段.约翰正打算安排他的N(1≤N≤25000)只奶牛来值班,打扫
打扫牛棚卫生.每只奶牛都有自己的空闲时间段[Si,Ei](1≤Si≤Ei≤T),只能把空闲的奶牛安排出来值班.而且,每个时间段必需有奶牛在值班. 那么,最少需要动用多少奶牛参与值班呢?如果没有办法安排出合理的方案,就输出-1.
Input
第1行:N,T.
第2到N+1行:Si,Ei.
Output
最少安排的奶牛数.
Sample Input
3 10
1 7
3 6
6 10
Sample Output
2
样例说明
奶牛1和奶牛3参与值班即可.
原来想的是dp,结果发现T来T去的在T
后来想了一下是贪心假设当前已经覆盖了1到l
那么找左节点<=l的右节点最大的r,令l=max(l,a[i].r),然后继续
wa了几次……因为以为左节点大的一定右节点大,实际上这显然不正确
#include#include #include #include #include #include #include #include #include #include