解题思路:
注意事项:
参考代码:
#include <iostream> #include <algorithm> #include <cstring> using namespace std; int dp[20001]; int v[31]; int main() { int n, i, j, m; while (cin >> n >> m) { memset(dp, 0, sizeof(dp)); for (i = 0; i < m; i++) { cin >> v[i]; for (j = n; j >= v[i]; --j) { dp[j] = max(dp[j], dp[j - v[i]] + v[i]); } } cout << n - dp[n] << endl; } return 0; }
0.0分
0 人评分
C语言程序设计教程(第三版)课后习题6.1 (C语言代码)浏览:664 |
C语言训练-排序问题<1> (C语言代码)浏览:599 |
A+B for Input-Output Practice (II) (C语言代码)浏览:989 |
C语言训练-求1+2!+3!+...+N!的和 (C语言代码)浏览:780 |
C语言程序设计教程(第三版)课后习题10.2 (C语言代码)浏览:504 |
1011题解浏览:760 |
1024题解浏览:806 |
sizeof的大作用 (C语言代码)浏览:1024 |
企业奖金发放 (C语言代码)浏览:2315 |
C语言程序设计教程(第三版)课后习题6.10 (C语言代码)浏览:505 |