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 <bits/stdc++.h>
using namespace std;
typedef long long ll;
void speed()
{
ios_base::sync_with_stdio(false);
cin.tie(0); cout.tie(0);
}
ll a[200020];
ll preff[200020], suff[200020];
ll razlike[200020];
int main()
{
speed();
int n; cin>>n;
for(int i=1; i<=n; i++)cin>>a[i];
razlike[0]=0; //razlike[i]=a[i]-a[i-1]
for(int i=1; i<=n; i++)razlike[i]=a[i]-a[i-1];
preff[0]=0; suff[n-1]=0;
for(int i=2; i<=n; i++)
{
preff[i]=preff[i-1];
if(razlike[i]<=0)preff[i]+=(-razlike[i]+1);
}
for(int i=n-1; i>=1; i--)
{
suff[i]=suff[i+1];
if(razlike[i+1]>=0)suff[i]+=(razlike[i+1]+1);
}
//for(int i=0; i<n; i++)cout<<suff[i]<<" "<<preff[i]<<" "<<razlike[i]<<endl;
ll rezz=INT_MAX;
for(int i=1; i<=n; i++)
{
rezz=min(rezz, max(suff[i], preff[i]));
}
cout<<rezz;
return 0;
}
# | Verdict | Execution time | Memory | Grader output |
---|
Fetching results... |
# | Verdict | Execution time | Memory | Grader output |
---|
Fetching results... |