This submission is migrated from previous version of oj.uz, which used different machine for grading. This submission may have different result if resubmitted.
#include "gap.h"
#include<bits/stdc++.h>
#define ll long long
using namespace std;
vector<ll>v;
ll findGap(int t,int n)
{
ll mini=0,maxi=1e18,i;
if (t==1){
for(i=0;i<(n+1)/2;i++){
MinMax(mini,maxi,&mini,&maxi);
v.push_back(mini);
v.push_back(maxi);
mini++;
maxi--;
}
}
else{
MinMax(mini,maxi,&mini,&maxi);
v.push_back(mini);
v.push_back(maxi);
ll buck=(maxi-mini+n-2)/(n-1)+1;
ll cur=mini,nex=mini+buck;
while(cur<=maxi){
ll x,y;
MinMax(cur,nex-1,&x,&y);
cur+=buck;
nex+=buck;
if (x>=0)
v.push_back(x);
if (y>=0)
v.push_back(y);
}
}
sort(v.begin(),v.end());
ll ans=0;
for(i=0;i<v.size()-1;i++)
ans=max(ans,v[i+1]-v[i]);
return ans;
}
Compilation message (stderr)
gap.cpp: In function 'long long int findGap(int, int)':
gap.cpp:37:14: warning: comparison of integer expressions of different signedness: 'long long int' and 'std::vector<long long int>::size_type' {aka 'long unsigned int'} [-Wsign-compare]
37 | for(i=0;i<v.size()-1;i++)
| ~^~~~~~~~~~~
# | Verdict | Execution time | Memory | Grader output |
---|
Fetching results... |
# | Verdict | Execution time | Memory | Grader output |
---|
Fetching results... |