제출 #560865

#제출 시각아이디문제언어결과실행 시간메모리
560865messiuuuuuGap (APIO16_gap)C++14
87.64 / 100
76 ms1864 KiB
#include <bits/stdc++.h> #include "gap.h" #define task "B" #define ll long long #define ld long double #define fi first #define se second #define pb push_back using namespace std; const int MAXN = 1e5 + 5; const ll INF = 1e18 + 5; ll ans = 0; ll findGap(int t, int n) { if (t == 1) { ll l = 0, r = 1e18, a[n + 1]; for (int i = 1; i <= n && (n - i + 1) >= i; i++) { MinMax(l, r, &a[i], &a[n - i + 1]); l = a[i] + 1; r = a[n - i + 1] - 1; } ans = 0; for (int i = 2; i <= n; i++) { ans = max(ans, a[i] - a[i - 1]); } return ans; } else { ll l = 0, r = 1e18; MinMax(l, r, &l, &r); if (n == 2) return r - l; ll h = (r - l + n - 2) / (n - 1); h--; ll ans = 0; ll prem = l; for (ll i = l; i + h <= r; i += h) { ll mn, mx; MinMax(i, i + h, &mn, &mx); if (mn == -1) continue; ans = max(ans, mn - prem); prem = mx; } return max(ans, r - prem); } }
#Verdict Execution timeMemoryGrader output
Fetching results...
#Verdict Execution timeMemoryGrader output
Fetching results...