제출 #1346621

#제출 시각아이디문제언어결과실행 시간메모리
1346621SulACatfish Farm (IOI22_fish)C++20
9 / 100
16 ms9008 KiB
#include <bits/stdc++.h>
using namespace std;

long long max_weights(int N, int M, std::vector<int> X, std::vector<int> Y, std::vector<int> W) {
    vector<long long> val(N+1);
    vector<vector<long long>> dp(N+1, vector<long long>(2));
    for (int i = 0; i < M; i++) {
        val[X[i] + 1] = W[i];
    }
    for (int i = 2; i <= N; i++) {
        dp[i][0] = max(dp[i-1][0], dp[i-1][1] + val[i]);
        dp[i][1] = max(dp[i-1][1], max(dp[i-2][0], dp[i-2][1]) + val[i-1]);
    }
    return max(dp[N][0], dp[N][1]);
}

// int main() {
//     int n = 5;
//     vector<int> X{0, 1, 2, 3, 4};
//     vector<int> Y{0, 0, 0, 0, 0};
//     vector<int> W{5, 100, 1, 3, 100};
//     int m = X.size();
//     cout << max_weights(n, m, X, Y, W);
//     for (int i = 0; i < m; i++)
//         cout << "\n" << X[i] << " " << Y[i] << " " << W[i];
// }
#Verdict Execution timeMemoryGrader output
Fetching results...
#Verdict Execution timeMemoryGrader output
Fetching results...
#Verdict Execution timeMemoryGrader output
Fetching results...
#Verdict Execution timeMemoryGrader output
Fetching results...
#Verdict Execution timeMemoryGrader output
Fetching results...
#Verdict Execution timeMemoryGrader output
Fetching results...
#Verdict Execution timeMemoryGrader output
Fetching results...
#Verdict Execution timeMemoryGrader output
Fetching results...