Submission #1106674

#TimeUsernameProblemLanguageResultExecution timeMemory
1106674ASN49KGap (APIO16_gap)C++14
70 / 100
47 ms4208 KiB
#include "gap.h" #include <bits/stdc++.h> using i64=long long; const i64 INF=1e18; long long findGap(int test, int n) { i64 rez=0; if (test == 1) { i64 l=1,r=INF; std::vector<i64>a; while(l<=r) { MinMax(l,r,&l,&r); if(l==-1) { break; } a.push_back(l); a.push_back(r); l++; r--; } sort(a.begin(),a.end()); rez=0; i64 last=a[0]; for(auto &c:a) { rez=std::max(rez , c-last); last=c; } } else { i64 l,r; MinMax(1,INF,&l,&r); if(l==r) { return 0; } const i64 at_least_gap=(r-l+n-2)/(n-1); rez=at_least_gap; for(i64 i=l,last=l;i<=r;i+=at_least_gap+1) { i64 mn,mx; MinMax(i,i+at_least_gap,&mn,&mx); if(mn!=-1) { rez=std::max(rez , mn-last); last=mx; } } } return rez; }
#Verdict Execution timeMemoryGrader output
Fetching results...
#Verdict Execution timeMemoryGrader output
Fetching results...