2013年12月26日 星期四

[USACO] 3-1-2 Score Inflation


/*
ID: 551100k1
LANG: C++
TASK: inflate
*/
#include<stdio.h>
int dp[10005]={0};
struct P{
    int c,p;
}s[10005];
int main(){
    freopen("inflate.in","r",stdin);
    freopen("inflate.out","w",stdout);
    int n,m,i,j;
    scanf("%d%d",&n,&m);
    for(i=0;i<m;i++)
        scanf("%d%d",&s[i].c,&s[i].p);
    for(i=0;i<m;i++)
        for(j=s[i].p;j<=n;j++)
            if(dp[j-s[i].p]+s[i].c>dp[j])
                dp[j]=dp[j-s[i].p]+s[i].c;
    printf("%d\n",dp[n]);
}

沒有留言:

張貼留言