Submission #1153414

#TimeUsernameProblemLanguageResultExecution timeMemory
1153414AlgorithmWarriorGap (APIO16_gap)C++20
30 / 100
44 ms3384 KiB
#include <bits/stdc++.h> using namespace std; #include "gap.h" void maxself(long long& x,long long val){ if(x<val) x=val; } long long findGap(int T, int N){ long long st,dr; MinMax(0,1e18,&st,&dr); if(T==1){ long long answer=1; int i; for(i=1;i<=(N-1)/2;++i){ long long ultst=st; long long ultdr=dr; MinMax(ultst+1,ultdr-1,&st,&dr); maxself(answer,st-ultst); maxself(answer,ultdr-dr); } maxself(answer,dr-st); return answer; } long long answer=(dr-st+N-2)/(N-1); vector<long long>v; v.push_back(st); long long i; for(i=st+1;i<dr;i+=answer+1){ long long mn,mx; MinMax(i,i+answer,&mn,&mx); if(st!=-1){ v.push_back(mn); v.push_back(mx); } } if(i==dr) v.push_back(dr); for(i=0;i<(int)v.size()-1;++i) maxself(answer,v[i+1]-v[i]); return answer; }
#Verdict Execution timeMemoryGrader output
Fetching results...
#Verdict Execution timeMemoryGrader output
Fetching results...