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;
const int nx=2e5+5;
long long n, v[nx], l[nx], r[nx], ans;
int main()
{
cin.tie(NULL)->sync_with_stdio(false);
cin>>n;
for (int i=1; i<=n; i++) cin>>v[i];
for (int i=2; i<=n; i++) l[i]=max(v[i-1]-v[i], -1ll)+1+l[i-1];
for (int i=n-1; i>=1; i--) r[i]=max(v[i+1]-v[i], -1ll)+1+r[i+1];
ans=min(l[n], r[1]);
for (int i=1; i<n; i++) ans=min(ans, max(l[i], r[i+1])+(v[i]+l[i]==v[i+1]+r[i+1]));
cout<<ans;
}
# | Verdict | Execution time | Memory | Grader output |
---|
Fetching results... |
# | Verdict | Execution time | Memory | Grader output |
---|
Fetching results... |