#include using namespace std; #define rep(i, n) for (int i = 0; i < (int)(n); i++) typedef vector VI; typedef vector VVI; typedef vector VL; typedef vector VVL; typedef long long LL; #define all(a) (a).begin(), (a).end() #define Yes(n) cout << ((n) ? "Yes" : "No" ) << endl #define ALL(a) (a).begin(),(a).end() #define pb push_back int main() { int n;cin>>n; set D; int maxx=2000000000; D.insert({maxx,1}); int ans=0; rep(i,n){ int h;cin>>h; auto it=D.begin(); VVI er; int a=0; while(1){ int ii=(*it)[0]; if(ii>h){ if((*it)[1]==0){ans-=h-a;} break; } if((*it)[1]==0){ans-=(ii-a);} a=ii; er.pb(*it); it++; } if(i%2==0){ans+=h;} //else{ans=max(0,ans-h);} for(VI z : er){D.erase(z);} D.insert({h,i%2}); cout<