Submission #261407

#TimeUsernameProblemLanguageResultExecution timeMemory
261407srvltGap (APIO16_gap)C++14
0 / 100
64 ms1272 KiB
#include <bits/stdc++.h> using namespace std; #define ll long long #define ld long double #define pb push_back #define all(x) begin(x), end(x) #define SZ(x) (int)(x).size() mt19937 rng(chrono::steady_clock::now().time_since_epoch().count()); #include "gap.h" ll findGap(int T, int N) { ll MAX = 1e18, mn = 0, mx = 0; MinMax(0ll, MAX, & mn, & mx); if (T == 1) { ll l = mn, r = mx; ll ans = 0; if (N == 2) ans = r - l; while (true) { MinMax(l + 1, r - 1, & mn, & mx); if (mn == -1) break; ans = max(ans, mn - l); ans = max(ans, r - mx); l = mn, r = mx; } return ans; } ll step = (mx - mn) / (N - 1), v = mn, f = mx; ll ans = step; while (v < f && step < MAX) { MinMax(v + 1, v + step, & mn, & mx); if (mn == -1) step *= 2; else { ans = max(ans, mn - v); v = mx; } } return ans; }
#Verdict Execution timeMemoryGrader output
Fetching results...
#Verdict Execution timeMemoryGrader output
Fetching results...