Submission #1217358

#TimeUsernameProblemLanguageResultExecution timeMemory
1217358maomaoGrowing Vegetables is Fun 4 (JOI21_ho_t1)C++20
100 / 100
98 ms4312 KiB
#include <iostream> using namespace std; #define ll long long #define fori(n) for(int i=1;i<=n;i++) int main() { int n; cin >> n; int h[n+1];h[0]=0; fori(n) cin >> h[i]; //precompute the cost so far if chose (i,n+1-i) ll pre[n+1] = {0}; for(int i=2;i<=n;i++) pre[i] = pre[i-1] + max(0,h[i-1]-h[i]+1); ll suf[n+1] = {0}; for(int i=n-1;i>=1;i--) suf[i] = suf[i+1] + max(0,h[i+1]-h[i]+1); ll ans = min(pre[n],suf[1]); fori(n-1) ans = min(ans,max(pre[i],suf[i])); //max pre[i] suf[i] to water range(i,n+1-i) and suffice both ends cout << ans; return 0; }
#Verdict Execution timeMemoryGrader output
Fetching results...
#Verdict Execution timeMemoryGrader output
Fetching results...