제출 #530301

#제출 시각아이디문제언어결과실행 시간메모리
530301HowardGrowing Vegetables is Fun 4 (JOI21_ho_t1)C++14
0 / 100
1 ms204 KiB
#include<bits/stdc++.h>
using namespace std;
int main(){
	int n;
	long long ans, mn = (long long)1e9;
	cin >> n;
	long long a[n];
	vector<long long> pos(n);
	vector<long long> neg(n);
	for(int i = 0; i < n; i++) cin >> a[i];
	for(int i = 1; i < n; i++){
		if(a[i] > a[i-1]) pos[i] = pos[i-1];
		else if(a[i] < a[i-1]) pos[i] = pos[i-1] + a[i-1] - a[i] + 1;
		else pos[i] = pos[i-1] + 1;
	}
	for(int i = n-2; i >= 0; i--){
		if(a[i+1] < a[i]) neg[i] = neg[i+1];
		else if(a[i+1] > a[i]) neg[i] = neg[i+1] + a[i+1] - a[i] + 1;
		else neg[i] = neg[i+1] + 1;
	}
	for(int k = 0; k < n; k++){
		if(neg[k] < pos[k]) ans = pos[k];
		else ans = pos[k] + neg[k];
		mn = min(mn,ans);
	}
	cout << mn << endl;
	return 0;
} 
#Verdict Execution timeMemoryGrader output
Fetching results...
#Verdict Execution timeMemoryGrader output
Fetching results...