Submission #95692

#TimeUsernameProblemLanguageResultExecution timeMemory
95692dwscGap (APIO16_gap)C++14
100 / 100
64 ms2044 KiB
#include "gap.h" #include <bits/stdc++.h> using namespace std; long long findGap(int T, int N) { if (T == 1){ long long arr[N]; long long x1,x2; long long low = 0,high = 1e18; for (int i = 0; i < (N+1)/2; i++){ MinMax(low,high,&x1,&x2); arr[i] = x1,arr[N-i-1] = x2; low = x1+1,high = x2-1; } long long ans = 0; for (int i = 0; i < N-1; i++) ans = max(ans,arr[i+1]-arr[i]); return ans; } long long low,high; MinMax(0,1e18,&low,&high); long long gap = (high-low+N-1)/(N-1); long long prev = low; long long ans = 0; long long t1,t2; for (long long lower = low; lower < high; lower += gap){ MinMax(lower+1,lower+gap,&t1,&t2); // cout << lower << t1 << " " << t2 << "\n"; if (t1 != -1) ans = max(ans,t1-prev); if (t2 != -1) prev = t2; } return ans; }
#Verdict Execution timeMemoryGrader output
Fetching results...
#Verdict Execution timeMemoryGrader output
Fetching results...