Submission #1288043

#TimeUsernameProblemLanguageResultExecution timeMemory
1288043LIATricks of the Trade (CEOI23_trade)C++17
0 / 100
8090 ms4164 KiB
#include <bits/stdc++.h>

using namespace std;
#define ll long long
#define vll vector<ll>

int main() {
  ios_base::sync_with_stdio(0);
  cin.tie(NULL);
  ll n, k, ans = -1e18;
  cin >> n >> k;
  vll b(n), s(n);
  for (ll i = 0; i < n; ++i)
    cin >> b[i];
  for (ll i = 0; i < n; ++i)
    cin >> s[i];

  for (ll st = 0; st < n; ++st) {
    ll sum_buy = 0;
    priority_queue<ll, vll> pq;
    ll sum_pq = 0;
    for (ll ed = st; ed < n; ++ed) {
      sum_buy += b[ed];
      pq.push(s[ed]);
      sum_pq += s[ed];
      if (ed - st + 1 >= k) {
        while (pq.size() > k) {
          auto node = pq.top();
          pq.pop();
          sum_pq -= node;
        }
        ll ans_ed = sum_pq - sum_buy;
        ans = max(ans, ans_ed);
      }
    }
  }

  cout << ans;
  return 0;
}
#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...