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