제출 #756802

#제출 시각아이디문제언어결과실행 시간메모리
756802TsotneSVGrowing Vegetables is Fun 4 (JOI21_ho_t1)C++14
100 / 100
27 ms6592 KiB
#include <bits/stdc++.h> using namespace std; using ll = long long; #define ff first #define ss second #define pii pair<int,int> #define pb push_back #define eb emplace_back #define ins insert #define endl "\n" #define flush fflush(stdout) #define deb(x) cout<<(x)<<endl #define all(x) (x).begin(),(x).end() #define dbg(x) cout<<#x<<" "<<x<<endl const ll INF=1e17,MOD=1e9+7,MAXN=3e5+5; ll A[MAXN],pref[MAXN],suff[MAXN],add[MAXN]; int tt=1,n; void solve(){ add[0] = 0; cin>>n; A[0] = A[n+1] = -INF; pref[0] = suff[n+1] = 0; for(int i=1;i<=n;i++) { cin>>A[i]; pref[i] = pref[i-1] + max(0ll,A[i-1] - A[i] + 1); add[i] = add[i-1] + max(0ll,A[i-1] - A[i] + 1); } for(int i=n;i>=1;i--) { suff[i] = suff[i+1] + max(0ll,A[i+1] - A[i] + 1); } ll mn = INF; for(int i=1;i<=n;i++) { ll tmp = pref[i] + suff[i] - min(suff[i],add[i]); mn = min(mn,tmp); } deb(mn); } signed main(){ ios_base::sync_with_stdio(0); cin.tie(nullptr); // cin>>tt; while(tt--){ solve(); } }
#Verdict Execution timeMemoryGrader output
Fetching results...
#Verdict Execution timeMemoryGrader output
Fetching results...