#include <bits/stdc++.h>
#include "gap.h"
using namespace std;
set<long long> x;
pair<long long, long long> ask(long long l, long long r){
long long *mn, *mx;
MinMax(l, r, mn, mx);
return {*mn, *mx};
}
void solve(long long l, long long r){
if(l > r) return;
long long mid = l + (r - l) / 2;
pair<long long, long long> res = ask(l, r);
if(res.first == -1 || res.second == -1) return;
x.insert(res.first);
x.insert(res.second);
if(l == r) return;
solve(res.first + 1, mid);
solve(mid + 1, res.second - 1);
}
long long findGap(int T, int N)
{
x.clear();
solve(0, (long long) 1e18);
long long ans = 0, prev = *x.begin();
for(auto it : x){
ans = max(ans, it - prev);
prev = it;
}
return ans;
}
| # | Verdict | Execution time | Memory | Grader output |
|---|
| Fetching results... |
| # | Verdict | Execution time | Memory | Grader output |
|---|
| Fetching results... |