Submission #107817

#TimeUsernameProblemLanguageResultExecution timeMemory
107817Noam527Gap (APIO16_gap)C++17
59.04 / 100
102 ms4360 KiB
#include <bits/stdc++.h> #define CHECK cout << "ok" << endl #define finish(x) return cout << x << endl, 0 typedef long long ll; typedef long double ldb; const int md = 1e9 + 7; const ll inf = 1e18; const int OO = 1; const int OOO = 1; using namespace std; void MinMax(ll s, ll t, ll *mn, ll *mx); ll findGap(int t, int n) { ll lo, hi, a, b; vector<ll> pos; MinMax(0, inf, &lo, &hi); ll d = (hi - lo) / (n - 1); pos.push_back(lo); for (ll i = lo + 1; i < hi; i += d) { MinMax(i, i + d - 1, &a, &b); if (a != -1) { pos.push_back(a); pos.push_back(b); } } if (pos.back() != hi) pos.push_back(hi); ll rtn = pos[1] - pos[0]; for (int i = 2; i < pos.size(); i++) rtn = max(rtn, pos[i] - pos[i - 1]); return rtn; } /* int main() { ll ans = findGap(0, 4); cout << "my ans " << ans << '\n'; } */

Compilation message (stderr)

gap.cpp: In function 'll findGap(int, int)':
gap.cpp:29:20: warning: comparison between signed and unsigned integer expressions [-Wsign-compare]
  for (int i = 2; i < pos.size(); i++)
                  ~~^~~~~~~~~~~~
#Verdict Execution timeMemoryGrader output
Fetching results...
#Verdict Execution timeMemoryGrader output
Fetching results...