제출 #80656

#제출 시각아이디문제언어결과실행 시간메모리
80656AngelKnowsGap (APIO16_gap)C++14
0 / 100
77 ms39452 KiB
#include "gap.h" #include <bits/stdc++.h> using namespace std; #define ll long long ll mn,mx; ll l,r,mid; ll a[100005]; int h,t; ll ans; unsigned long long now,pre; unsigned long long len; long long findGap(int T, int N) { if (T==1) { h=0,t=N+1; l=0,r=1e18+1; for (;;) { MinMax(l,r,&mn,&mx); a[++h]=mn,a[--t]=mx; l=mn+1,r=mx-1; if (h>=t-1) break; } for (int i=1;i<=N-1;i++) { ll t=a[i+1]-a[i]; if (t>ans) ans=t; } printf("%lld\n",ans); } else { MinMax(0,1e18+1,&mn,&mx); now=mn; len=1; pre=now; while (now<=1e18) { MinMax(now+1,now+len,&mn,&mx); if (mn==-1) { now+=len; len*=2; } else { ans=max(ans,mn-(ll)pre); now=mx; } } printf("%lld\n",ans); } return 0; }
#Verdict Execution timeMemoryGrader output
Fetching results...
#Verdict Execution timeMemoryGrader output
Fetching results...