Submission #1099540

#TimeUsernameProblemLanguageResultExecution timeMemory
1099540KasymKGap (APIO16_gap)C++17
30 / 100
46 ms1932 KiB
#include "bits/stdc++.h" #include "gap.h" using namespace std; #define ff first #define ss second #define all(v) v.begin(), v.end() #define ll long long #define pb push_back #define pii pair<int, int> template<class T>bool umin(T& a,T b){if(a>b){a=b;return 1;}return 0;} template<class T>bool umax(T& a,T b){if(a<b){a=b;return 1;}return 0;} const int MOD = 1e9+7; const int N = 1e5+5; ll a[N]; ll findGap(int t, int n){ if(t == 1){ ll l = 0, r = 1e18, id = 0, mn, mx, ans = 0; for(int i = 0; i < (n+1)/2; ++i){ MinMax(l, r, &mn, &mx); a[id++] = mn, a[id++] = mx, l = mn+1, r = mx-1; } sort(a, a+n); for(int i = 0; i < n-1; ++i) umax(ans, a[i+1]-a[i]); return ans; } ll s, T; MinMax(0, LLONG_MAX, &s, &T); //n + 1 ll d = (T-s+n)/(n-1), mx = 0, a = s; while(s + 1 < T){ ll x, y; MinMax(s+1, min(s+d, T-1), &x, &y); if(~x){ umax(mx, x-a); a = y; } s += d; } umax(mx, t-a); return mx; }
#Verdict Execution timeMemoryGrader output
Fetching results...
#Verdict Execution timeMemoryGrader output
Fetching results...