解题思路:
注意事项:
参考代码:
#include<iostream>
using namespace std;
int w[31];
int c[31];
int dp[201] = {0};
int main()
{
int m, n;
cin >> m >> n;
for (int i = 0; i < n; i++) {
cin >> w[i] >> c[i];
}
for (int i = 1; i <= m; i++) {
for (int j = 0; j < n; j++) {
if (i >= w[j]) {
dp[i] = max(dp[i], dp[i - w[j]] + c[j]);
}
}
}
cout << "max=" << dp[m];
return 0;
}
0.0分
0 人评分
C语言训练-求PI* (C语言代码)(正确结果竟然是谜一样的3.141591)浏览:1338 |
C语言程序设计教程(第三版)课后习题7.2 (Java代码)浏览:694 |
九宫重排 (C++代码)浏览:1410 |
C语言程序设计教程(第三版)课后习题8.9 (Java代码)浏览:1413 |
C语言程序设计教程(第三版)课后习题7.4 (C语言代码)浏览:643 |
输出正反三角形 (C语言代码)浏览:859 |
Tom数 (C语言代码)浏览:598 |
大神老白 (C语言代码)浏览:637 |
C语言程序设计教程(第三版)课后习题7.2 (C语言代码)浏览:812 |
简单的a+b (C语言代码)浏览:497 |