Submission #1148595

#TimeUsernameProblemLanguageResultExecution timeMemory
1148595WH8Growing Vegetables is Fun 4 (JOI21_ho_t1)C++20
0 / 100
1 ms328 KiB
#include <bits/stdc++.h> using namespace std; #define int long long #define f first #define s second #define pb push_back #define ld long double #define pll pair<int, int> signed main(){ int n; cin >> n; int a[n], b[n], v[n], at[n], bt[n], pu, pv; for(int i=0;i<n;i++){ a[i]=b[i]=0; cin>>v[i]; } pu=0,pv=v[0],at[0]=v[0]; for(int i=1;i<n;i++){ int t=pv+1; if(t<v[i] + pu){ pv=v[i]+pu; a[i]=pu; at[i]=pv; continue; } pu+=max(0ll, t-v[i]-pu); a[i]=pu; pv = t; at[i]=pv; } pu=0,pv=v[n-1],bt[n-1]=v[n-1]; for(int i=n-2;i>=0;i--){ int t=pv+1; if(t<v[i] + pu){ pv=v[i]+pu; b[i]=pu; } else{ pu+=max(0ll, t-v[i]-pu); b[i]=pu; pv = t; } bt[i]=pv; } //~ for(int i=0;i<n;i++){ //~ cout<<a[i]<<" "<<b[i]<<" "<<at[i]<<" "<<bt[i]<<endl; //~ } int ans=1e9; for(int i=0;i<n;i++){ ans=min(ans,max(a[i],b[i])); } cout<<ans; }
#Verdict Execution timeMemoryGrader output
Fetching results...
#Verdict Execution timeMemoryGrader output
Fetching results...