Submission #1355273

#TimeUsernameProblemLanguageResultExecution timeMemory
1355273guardianecGrowing Vegetables is Fun 4 (JOI21_ho_t1)C++20
100 / 100
14 ms6656 KiB
#include <bits/stdc++.h>
#define ll long long
using namespace std;

int main() {
    ios_base::sync_with_stdio(0);
    cin.tie(0);

    ll n;
    cin >> n;
    vector<ll> a(n);
    for (int i=0; i<n; i++) {
        cin >> a[i];
    }

    vector<ll> diff(n);
    diff[0] = a[0];
    for (int i=0; i<n-1; i++) {
        diff[i+1] = a[i+1]-a[i];
    }

    vector<ll> pref(n+1);
    for (int i=0; i<n; i++) {
        pref[i] = (i>0 ? pref[i-1] : 0) + (diff[i]<=0 ? abs(diff[i])+1 : 0);
    }
    vector<ll> suff(n+1);
    for (int i=n-1; i>=0; i--) {
        suff[i] = suff[i+1]+(diff[i]>=0 ? abs(diff[i])+1 : 0);
    }

    ll res = 1e18;
    for (int i=0; i<n; i++) {
        res = min(res, max(suff[i+1], pref[i]));
    }

    cout << res;
}
#Result Execution timeMemoryGrader output
Fetching results...
#Result Execution timeMemoryGrader output
Fetching results...