#include "gap.h"
#include <bits/stdc++.h>
using namespace std;
#define ll long long
long long findGap(int T, int N)
{
if(T == 1){
vector<ll> v;
ll mn = 0, mx = 0;
MinMax(0, 1e18, &mn, &mx);
v.push_back(mn);
if(mn != mx){
v.push_back(mx);
}
ll l = mn, r = mx;
while (l <= r){
if(v.size() >= N) break;
MinMax(l+1, r-1, &mn, &mx);
if(mn == -1) break;
v.push_back(mn);
if(mn != mx){
v.push_back(mx);
}
l = mn;
r = mx;
}sort(v.begin(), v.end());
ll ans = 0;
for(ll i = 0; i < v.size()-1; i++){
ans = max(ans, v[i+1] - v[i]);
}return ans;
}else {
ll mn = 0, mx = 0;
MinMax(0, 1e18, &mn, &mx);
ll p = (mx-mn)/(N-1);
ll ans = 0;
while(mn < mx){
ll l = 0, r = 0;
MinMax(mn+1, mn+p, &l, &r);
if(l == -1){
p *=2;
}else {
ans = max(ans, l - mn);
p = ans;
mn = r;
}
}return ans;
}
}
| # | Verdict | Execution time | Memory | Grader output |
|---|
| Fetching results... |
| # | Verdict | Execution time | Memory | Grader output |
|---|
| Fetching results... |