zoj——3623(dp)

来源:互联网 发布:网络机顶盒进不了系统 编辑:程序博客网 时间:2024/05/16 03:58

题目链接:http://acm.zju.edu.cn/onlinejudge/showProblem.do?problemCode=3623

转载代码:

#include <iostream>#include <stdio.h>#include <string.h>#include <algorithm>using namespace std;int N,L;int T[34],l[34];int dp[334];int main(){    int i,j;    while(scanf("%d%d",&N,&L)!=EOF)    {        for(i=1;i<=N;i++)         scanf("%d%d",&T[i],&l[i]);        memset(dp,0,sizeof(dp));     for(j=1;j<=L;j++)        for(i=1;i<=N;i++)          dp[j+T[i]]=max(dp[j]+l[i]*j,dp[j+T[i]]);        for(i=1;i<=330;i++)         if(dp[i]>=L)          break;        printf("%d\n",i);    }    return 0;}

原创粉丝点击