Submission #1224566

#TimeUsernameProblemLanguageResultExecution timeMemory
1224566LaMatematica14Tricks of the Trade (CEOI23_trade)C++20
10 / 100
8096 ms5236 KiB
#include <bits/stdc++.h>
using namespace std;

int main() {
    int N, K; cin >> N >> K;
    vector<long long> T(N), S(N);
    for (int i = 0; i < N; i++) cin >> T[i];
    for (int i = 0; i < N; i++) cin >> S[i];
    //for (int i = 0; i < N; i++) S[i] -= T[i];
    
    long long best = -1e14;
    vector<int> belli(N, 0);
    for (int i = 0; i < N; i++) {
        priority_queue<int> pq;
        long long att = 0;
        for (int j = i; j < N; j++) {
            att += S[j]-T[j];
            pq.push(-S[j]);
            if (pq.size() > K) {
                att += pq.top();
                pq.pop();  
            }
            if (pq.size() == K) best = max(best, att);
        }
    }
    cout << best << endl;
}
#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...