|
- #include <cstdio>
- int f[101][1001],cost[101],get[101],t,n,sum=0;
- int max(int a,int b)
- {
- if(a>=b)
- return a;
- else
- return b;
- }
- int main()
- {
- scanf("%d%d",&t,&n);
- for(int i=1;i<=n;i++)
- scanf("%d%d",&cost[i],&get[i]);
- for(int i=1;i<=n;i++)
- for(int v=0;v<=t;v++)
- {
- f[i][v]=f[i-1][v];
- if(v>=cost[i])
- f[i][v]=max(f[i-1][v],f[i-1][v-cost[i]]+get[i]);
- }
- printf("%d",f[n][t]);
- return 0;
- }
复制代码 |
|