P1267 尼克的任务

来源:互联网 发布:windows xp 停止服务 编辑:程序博客网 时间:2024/04/30 21:03

P1267 尼克的任务
2017年8月2日
一维动态规划


#include<iostream>#include<cstdio>#include<algorithm>#include<cstring>using namespace std;int N, K;struct Work{    int st, ed, L;}F[11000];int T[11000];bool cmp(Work a, Work b)    {return (a.st < b.st);}void Putin(){    cin >> N >> K;    for(int i = 1; i <= K; i++){        cin >> F[i].st >> F[i].L;        F[i].ed = F[i].st + F[i].L - 1;    }    memset(T, 0, sizeof(T));    sort(F + 1, F + 1 + K, cmp);}int main(){    Putin();    int ans = K;    for(int i = N; i >= 1; i--)    {        if(F[ans].st != i)            T[i] = T[i + 1] + 1;        else            while(F[ans].st == i){                T[i] = max(T[i], T[F[ans].ed + 1]);                ans--;            }    }    cout << T[1] << endl;    return 0;}
原创粉丝点击