求大佬帮忙看看,WA了5和9。。。。
查看原帖
求大佬帮忙看看,WA了5和9。。。。
856531
13906379363cz楼主2023/8/18 17:22
#include <iostream>

using namespace std;

int dp[11][2500000];
int s, n ,d;

void init () {
    for (int i = 1; i <= d; ++i) {
        for (int j = 1; j <= s; ++j) {
            dp[i][j] = 0;
        }
    }
}

int main () {
    cin >> s >> n >> d;
    int sum = s % 1000;
    s /= 1000;
    int w[11], v[11];
    for (int i = 1; i <= d; ++i) {
        cin >> w[i] >> v[i];
        w[i] /= 1000;
    }

    while (n--) {
        init();
        for (int i = 1; i <= d; ++i) {
            for (int j = w[i]; j <= s; ++j) {
                dp[i][j] = max(dp[i - 1][j], dp[i][j - w[i]] + v[i]);
            }
        }

        sum += dp[d][s];
        s += sum / 1000;
        sum %= 1000;
    }
    cout << sum + s * 1000 << endl;

    return 0;
}
2023/8/18 17:22
加载中...