Run ID 作者 问题 语言 测评结果 分数 时间 内存 代码长度 提交时间
144196 jiayou 最优选课 C++ 通过 100 5 MS 328 KB 681 2024-04-21 09:54:44

Tests(2/2):


#include <iostream> using namespace std; int w[101][101], dp[101][101]; int main() { while (true) { fill(dp[0], dp[0] + 100 * 100, 0); int n, m; cin >> n >> m; if (n == 0 && m == 0) { exit(0); } for (int i = 1; i <= n; i++) { for (int j = 1; j <= m; j++) { cin >> w[i][j]; } } for (int i = 1; i <= n; i++) { for (int j = 1; j <= m; j++) { dp[i][j] = dp[i - 1][j]; for (int k = 1; k <= m; k++) { if (j >= k) { dp[i][j] = max(dp[i - 1][j - k] + w[i][k], dp[i][j]); } } } } cout << dp[n][m] << endl; } return 0; }


测评信息: