Submission #541299

#TimeUsernameProblemLanguageResultExecution timeMemory
541299NyanCatTW1Growing Vegetables is Fun 4 (JOI21_ho_t1)C++17
100 / 100
26 ms6936 KiB
#include <iostream>
#include <vector>

using namespace std;
typedef long long LL;

int main() {
    ios::sync_with_stdio(false);
    cin.tie(NULL);

    int N;
    cin >> N;

    vector<LL> heights(N);
    for (int i = 0; i < N; i++) {
        cin >> heights[i];
    }

    vector<LL> LHeights(N);
    for (int i = 1; i < N; i++) {
        LHeights[i] = LHeights[i - 1] + max(0LL, heights[i - 1] - heights[i] + 1);
    }

    vector<LL> RHeights(N);
    for (int i = N - 2; i >= 0; i--) {
        RHeights[i] = RHeights[i + 1] + max(0LL, heights[i + 1] - heights[i] + 1);
    }

    LL ans = max(LHeights[0], RHeights[0]);
    for (int i = 1; i < N; i++) {
        ans = min(ans, max(LHeights[i], RHeights[i]));
    }

    cout << ans << '\n';
}
#Verdict Execution timeMemoryGrader output
Fetching results...
#Verdict Execution timeMemoryGrader output
Fetching results...