Submission #1239622

#TimeUsernameProblemLanguageResultExecution timeMemory
1239622nasjesGrowing Vegetables is Fun 4 (JOI21_ho_t1)C++20
0 / 100
0 ms328 KiB
#include <iostream> #include <iomanip> #include <vector> #include <cmath> #include <algorithm> #include <set> #include <queue> #include <map> #include <stack> #include <bitset> #include <string> #include <cstring> #include <iterator> #include <random> using namespace std; typedef long long ll; typedef pair<ll, ll> pll; typedef long double ld; const ll dim = 3*1e2+7; //const ll mod = 1e9 + 7; const ll inf = 1e18 + 77; #define endl "\n" #define fi first #define pb push_back #define se second #define vll vector<ll> ll n, a[dim]; ll pr[dim], sf[dim]; int main(){ ll l, r; cin>>n; for(int i=1; i<=n; i++){ cin>>a[i]; } for(int i=1; i<=n; i++){ pr[i]=pr[i-1]; if(a[i]<=a[i-1]){ pr[i]+=abs(a[i]-a[i-1])+1; } } a[n+1]=0; for(int i=n; i>=1; i--){ sf[i]=sf[i+1]; if(a[i]<=a[i+1]){ sf[i]+=abs(a[i]-a[i+1])+1; } } ll ans=inf; for(int i=1; i<=n; i++){ ans=min(ans, max(sf[i], pr[i])); // cout<<sf[i]<<" "<<pr[i]<<endl; } cout<<ans<<endl; return 0; }
#Verdict Execution timeMemoryGrader output
Fetching results...
#Verdict Execution timeMemoryGrader output
Fetching results...