sicily 1342 开心的金明 DP

#include<cstdio>
#include<memory.h>
int mon,num;
int dp[30001],x[26],y[26];
int main()
{
    scanf("%d%d",&mon,&num);
    memset(dp,0,sizeof(int));
    for(int i=0;i<num;++i)
        scanf("%d%d",&x[i],&y[i]);
    for(int i = 0 ; i < num ; ++i 
        for(int j=mon;j>=x[i];--j)  //剪支,之前我是从1开始枚举的T~T。。
            if(dp[j-x[i]]+y[i]*x[i] > dp[j])
                dp[j] = dp[j-x[i]]+y[i]*x[i];
    printf("%d",dp[mon]);
    return 0;
}

 

posted @ 2013-11-25 16:31  y丫t  阅读(132)  评论(0编辑  收藏  举报