Submission #563333

# Submission time Handle Problem Language Result Execution time Memory
563333 2022-05-16T23:08:38 Z 1ne Rice Hub (IOI11_ricehub) C++14
0 / 100
1000 ms 2144 KB
#include "ricehub.h"
#include<bits/stdc++.h>
using namespace std;
int besthub(int R, int L, int X[], long long B)
{
  int ans = 0;
  vector<int64_t>pref(R + 1,0),dpref(R + 1,0);
  for (int i = 0 ;i<R - 1;++i){
	  pref[i + 1] = pref[i] + (X[i + 1] - X[i]);
	  dpref[i + 2] = pref[i + 1] + dpref[i + 1];
  }
  auto dist = [&](int l,int r){
	 return pref[r] * (r - l) - dpref[r] + dpref[l];
  };
  for (int i = 0;i<R;++i){
		int l = 0;
		int left = 0,right = i;
		while(left<=right){
			int mid = (left + right)>>1;
			if (dist(mid,i)<=B){
				l = mid;
				right = mid - 1;
			} 
			else left = mid + 1;
		}
		int counts = i - l + 1;
		int j = i + 1;
		ans = max(ans,counts);
		while(j<R && l<=i){
			if (dist(l,i) + dist(i,j)<=B){
				counts++;
				++j;
			}
			else if (l == i){
				break;
			}
			else{
				counts--;
				++l;
			}
			ans = max(ans,counts);
		}
  }
  return ans;
}
# Verdict Execution time Memory Grader output
1 Correct 0 ms 212 KB Output is correct
2 Correct 0 ms 212 KB Output is correct
3 Incorrect 0 ms 212 KB Output isn't correct
4 Halted 0 ms 0 KB -
# Verdict Execution time Memory Grader output
1 Correct 1 ms 212 KB Output is correct
2 Correct 0 ms 212 KB Output is correct
3 Correct 1 ms 212 KB Output is correct
4 Correct 0 ms 212 KB Output is correct
5 Correct 0 ms 212 KB Output is correct
6 Correct 1 ms 212 KB Output is correct
7 Correct 0 ms 212 KB Output is correct
8 Correct 0 ms 212 KB Output is correct
9 Correct 0 ms 212 KB Output is correct
10 Correct 0 ms 212 KB Output is correct
11 Incorrect 0 ms 212 KB Output isn't correct
12 Halted 0 ms 0 KB -
# Verdict Execution time Memory Grader output
1 Correct 0 ms 212 KB Output is correct
2 Correct 0 ms 212 KB Output is correct
3 Correct 1 ms 212 KB Output is correct
4 Correct 2 ms 212 KB Output is correct
5 Incorrect 0 ms 212 KB Output isn't correct
6 Halted 0 ms 0 KB -
# Verdict Execution time Memory Grader output
1 Correct 9 ms 596 KB Output is correct
2 Correct 9 ms 596 KB Output is correct
3 Execution timed out 1082 ms 2144 KB Time limit exceeded
4 Halted 0 ms 0 KB -