Run ID 作者 问题 语言 测评结果 时间 内存 代码长度 提交时间
29734 diandian 01背包问题 C++ 解答错误 0 MS 256 KB 446 2023-11-02 20:59:42

Tests(0/1):


#include <bits/stdc++.h> using namespace std; int dp[35][205], w[35], c[35], m, n; int main() { cin >> m >> n; for (int i = 1; i <= n; ++ i){ cin >> w[i] >> c[i]; } for (int i = 1; i <= m; ++ i){ for (int j = 1; j <= m; ++ j){ if (j > w[i]) dp[i][j] = c[i]; else dp[i][j] = max(dp[i - 1][j],dp[i - 1][j - w[i]] + c[i]); } } cout << dp[n][m]; return 0; }


测评信息: