zoukankan      html  css  js  c++  java
  • P1280 尼克的任务(逆序更新)

     

     1 #include <bits/stdc++.h>
     2 using namespace std;
     3 #define int long long
     4 const int maxn = 1e4 + 10;
     5 int n,k,b[maxn],dp[maxn];
     6 struct node{
     7     int p,t;
     8 }a[maxn];
     9 bool cmp(node b,node c){
    10     if(b.p != c.p)
    11         return b.p > c.p;
    12     return b.t > c.t;
    13 }
    14 signed main(){
    15     //freopen("in","r",stdin);
    16     ios::sync_with_stdio(0);
    17     cin >> n >> k;
    18     for(int i = 1; i <= k; i++)
    19         cin >> a[i].p >> a[i].t,b[a[i].p]++;
    20     sort(a + 1, a + 1 + k,cmp);
    21     int cnt = 1;
    22     for(int i = n; i >= 1; i--){
    23         if(!b[i])
    24             dp[i] = dp[i + 1] + 1;
    25         else{
    26             for(int j = 1; j <= b[i]; j++){
    27                 dp[i] = max(dp[i],dp[i + a[cnt++].t]);
    28             }
    29         }
    30     }
    31     cout << dp[1] << endl;
    32     return 0;
    33 }
    View Code
  • 相关阅读:
    Nginx 跨域配置支持
    数据结构与算法分析
    数据结构与算法分析
    数据结构与算法分析
    Bash shell
    Bash shell
    HHUOJ 1040
    HHUOJ 1114
    HDUOJ 1171
    HDUOJ 1428
  • 原文地址:https://www.cnblogs.com/xcfxcf/p/12807169.html
Copyright © 2011-2022 走看看