Run ID | 作者 | 问题 | 语言 | 测评结果 | 时间 | 内存 | 代码长度 | 提交时间 |
---|---|---|---|---|---|---|---|---|
29745 | diandian | 完全背包问题 | C++ | 通过 | 0 MS | 252 KB | 387 | 2023-11-02 21:30:12 |
#include <bits/stdc++.h> using namespace std; int dp[205] = {0}, w[35] = {0}, c[35] = {0}, m, n; int main() { cin >> m >> n; for (int i = 1; i <= n; ++ i) cin >> w[i] >> c[i]; for (int i = 1; i <= n; ++ i){ for (int j = w[i]; j <= m; ++ j){ dp[j] = max(dp[j],dp[j - w[i]] + c[i]); } } cout << "max=" << dp[m]; return 0; }