Submission #958095

# Submission time Handle Problem Language Result Execution time Memory
958095 2024-04-04T22:24:47 Z d4xn Rice Hub (IOI11_ricehub) C++17
100 / 100
13 ms 3676 KB
#include "ricehub.h"
#include <bits/stdc++.h>
using namespace std;

#define ll long long

int besthub(int R, int L, int X[], ll B)
{ 
  ll n = R;
  ll ans = 1;

  ll l = 0;
  ll r = 0;
  ll mid = 0;
  ll cost = 0;
  ll cntL = 1;
  ll cntR = 0;
  while (l < n) {
    while (r+1 < n) {
      ll prevCost = cost;
      ll prevMid = mid;
      ll prevCntL = cntL;
      ll prevCntR = cntR;

      r++;
      cntR++;
      cost += X[r]-X[mid];

      while (cntL < cntR) {
        ll sz = X[mid+1]-X[mid];
        cost += cntL*sz - cntR*sz;
      
        mid++;
        cntL++;
        cntR--;
      }

      if (cost > B) {
        r--;
        cost = prevCost;
        mid = prevMid;
        cntL = prevCntL;
        cntR = prevCntR;
        break;
      }
    }
    ans = max(ans, r-l+1);

    cost -= X[mid]-X[l];
    cntL--;
    l++;
  }

  return ans;
}
# Verdict Execution time Memory Grader output
1 Correct 0 ms 344 KB Output is correct
2 Correct 0 ms 348 KB Output is correct
3 Correct 0 ms 348 KB Output is correct
4 Correct 0 ms 348 KB Output is correct
5 Correct 0 ms 348 KB Output is correct
# Verdict Execution time Memory Grader output
1 Correct 0 ms 348 KB Output is correct
2 Correct 0 ms 348 KB Output is correct
3 Correct 0 ms 344 KB Output is correct
4 Correct 0 ms 344 KB Output is correct
5 Correct 0 ms 348 KB Output is correct
6 Correct 0 ms 348 KB Output is correct
7 Correct 0 ms 348 KB Output is correct
8 Correct 1 ms 348 KB Output is correct
9 Correct 0 ms 348 KB Output is correct
10 Correct 0 ms 348 KB Output is correct
11 Correct 0 ms 348 KB Output is correct
12 Correct 1 ms 348 KB Output is correct
13 Correct 0 ms 344 KB Output is correct
14 Correct 0 ms 348 KB Output is correct
15 Correct 0 ms 348 KB Output is correct
16 Correct 0 ms 348 KB Output is correct
17 Correct 0 ms 348 KB Output is correct
18 Correct 0 ms 348 KB Output is correct
19 Correct 0 ms 348 KB Output is correct
20 Correct 0 ms 348 KB Output is correct
21 Correct 1 ms 348 KB Output is correct
22 Correct 0 ms 348 KB Output is correct
23 Correct 0 ms 348 KB Output is correct
24 Correct 0 ms 348 KB Output is correct
25 Correct 0 ms 348 KB Output is correct
26 Correct 0 ms 348 KB Output is correct
27 Correct 0 ms 348 KB Output is correct
28 Correct 0 ms 344 KB Output is correct
# Verdict Execution time Memory Grader output
1 Correct 0 ms 348 KB Output is correct
2 Correct 0 ms 348 KB Output is correct
3 Correct 0 ms 348 KB Output is correct
4 Correct 1 ms 348 KB Output is correct
5 Correct 0 ms 344 KB Output is correct
6 Correct 1 ms 344 KB Output is correct
7 Correct 1 ms 344 KB Output is correct
8 Correct 1 ms 348 KB Output is correct
9 Correct 0 ms 348 KB Output is correct
10 Correct 1 ms 344 KB Output is correct
11 Correct 0 ms 556 KB Output is correct
12 Correct 0 ms 348 KB Output is correct
13 Correct 0 ms 348 KB Output is correct
14 Correct 1 ms 348 KB Output is correct
15 Correct 0 ms 348 KB Output is correct
16 Correct 0 ms 348 KB Output is correct
17 Correct 1 ms 348 KB Output is correct
18 Correct 0 ms 348 KB Output is correct
19 Correct 0 ms 348 KB Output is correct
20 Correct 1 ms 348 KB Output is correct
21 Correct 1 ms 348 KB Output is correct
22 Correct 1 ms 348 KB Output is correct
23 Correct 1 ms 348 KB Output is correct
24 Correct 1 ms 348 KB Output is correct
25 Correct 1 ms 348 KB Output is correct
26 Correct 1 ms 348 KB Output is correct
27 Correct 1 ms 344 KB Output is correct
28 Correct 1 ms 348 KB Output is correct
# Verdict Execution time Memory Grader output
1 Correct 3 ms 348 KB Output is correct
2 Correct 3 ms 348 KB Output is correct
3 Correct 9 ms 2648 KB Output is correct
4 Correct 9 ms 2652 KB Output is correct
5 Correct 4 ms 2908 KB Output is correct
6 Correct 5 ms 2924 KB Output is correct
7 Correct 8 ms 3420 KB Output is correct
8 Correct 10 ms 3420 KB Output is correct
9 Correct 4 ms 2908 KB Output is correct
10 Correct 4 ms 2908 KB Output is correct
11 Correct 10 ms 3676 KB Output is correct
12 Correct 9 ms 3676 KB Output is correct
13 Correct 5 ms 3036 KB Output is correct
14 Correct 5 ms 2904 KB Output is correct
15 Correct 7 ms 3512 KB Output is correct
16 Correct 7 ms 3420 KB Output is correct
17 Correct 9 ms 3528 KB Output is correct
18 Correct 8 ms 3420 KB Output is correct
19 Correct 10 ms 3676 KB Output is correct
20 Correct 13 ms 3672 KB Output is correct