Submission #1289066

#TimeUsernameProblemLanguageResultExecution timeMemory
1289066LIATricks of the Trade (CEOI23_trade)C++17
Compilation error
0 ms0 KiB
void dc(ll l, ll r, ll optl, ll optr) {
  if (l > r)
    return;
  ll mid = (l + r) / 2;

  ll st = max(optl, mid + k - 1), ed = optr;
  ll ans_mid = -inf, opt = st;

  // if (st > ed) {
  //   ll pass_opt = max(optl, mid + k - 1);
  //   dc(l, mid - 1, optl, min(optr, max(pass_opt, optl)));
  //   dc(mid + 1, r, max(optl, pass_opt), optr);
  //   return;
  // }

  priority_queue<ll, vll, greater<ll>> pq;
  ll sum_k_best = 0;

  for (ll t = mid; t < st; ++t) {
    pq.push(s[t]);
    sum_k_best += s[t];
    if (pq.size() > k) {
      sum_k_best -= pq.top();
      pq.pop();
    }
  }
  for (ll i = st; i <= ed; ++i) {
    pq.push(s[i]);
    sum_k_best += s[i];
    if (pq.size() > k) {
      sum_k_best -= pq.top();
      pq.pop();
    }
    ll sum = pre[i] - (mid == 0 ? 0 : pre[mid - 1]);
    ll cur = sum_k_best - sum;
    if (cur > ans_mid || (cur == ans_mid && i < opt)) {
      ans_mid = cur;
      opt = i;
    }
  }

  ans = max(ans, ans_mid);
  dc(l, mid - 1, optl, opt);
  dc(mid + 1, r, opt, optr);
}

Compilation message (stderr)

trade.cpp:1:6: error: variable or field 'dc' declared void
    1 | void dc(ll l, ll r, ll optl, ll optr) {
      |      ^~
trade.cpp:1:9: error: 'll' was not declared in this scope
    1 | void dc(ll l, ll r, ll optl, ll optr) {
      |         ^~
trade.cpp:1:15: error: 'll' was not declared in this scope
    1 | void dc(ll l, ll r, ll optl, ll optr) {
      |               ^~
trade.cpp:1:21: error: 'll' was not declared in this scope
    1 | void dc(ll l, ll r, ll optl, ll optr) {
      |                     ^~
trade.cpp:1:30: error: 'll' was not declared in this scope
    1 | void dc(ll l, ll r, ll optl, ll optr) {
      |                              ^~