解题思路:
注意事项:
参考代码:
#include<iostream>
using namespace std;
const int T=101,M=1001;
int cost[T],value[T],dp[M],t,m;
int main()
{
cin>>t>>m;
for(int i=1;i<=m;i++)
{
cin>>cost[i]>>value[i];
}
for(int i=1;i<=m;i++)
for(int j=t;j>=cost[i];j--)
{
dp[j]=max(dp[j],dp[j-cost[i]]+value[i]);
}
cout<<dp[t];
return 0;
}
0.0分
3 人评分
求组合数 (C语言代码)浏览:1159 |
C语言训练-尼科彻斯定理 (C语言代码)浏览:469 |
C语言程序设计教程(第三版)课后习题9.4 (C语言代码)浏览:667 |
K-进制数 (C语言描述,蓝桥杯)浏览:925 |
C语言程序设计教程(第三版)课后习题9.8 (C语言代码)浏览:677 |
A+B for Input-Output Practice (IV) (C语言代码)浏览:492 |
理财计划 (C语言代码)浏览:468 |
C二级辅导-等差数列 (C语言代码)浏览:824 |
简单的a+b (C语言代码)浏览:443 |
C语言程序设计教程(第三版)课后习题1.5 (C语言代码)浏览:496 |