#include <stdio.h>
int main(void) {
int ar[10000];
int n=0;
//input all values
while(scanf("%d",&ar
[n
++])==1); int l=0,h=n-1,ans=0,LMax=0,RMax=0;
//l is the left index
// h is the right index
//LMax is the maximum of all the heights up to and including that point and
//RMax is the maximum of heights from that point onward
while(l<h){
//find out the smaller one out of left and right index
if(ar[l]<ar[h]){
if(ar[l]>LMax){
LMax=ar[l];
}
else{
//The smaller of LMax and RMax minus the height at that point is the water amount.
ans+=(LMax-ar[l]);
}
l++;
}
else{
//symetrically opposite code for the right side
if(ar[h]>RMax){
RMax=ar[h];
}
else{
ans+=(RMax-ar[h]);
}
h--;
}
}
return 0;
}
I2luY2x1ZGUgPHN0ZGlvLmg+CgppbnQgbWFpbih2b2lkKSB7CglpbnQgYXJbMTAwMDBdOwoJaW50IG49MDsKICAgIC8vaW5wdXQgYWxsIHZhbHVlcwoJd2hpbGUoc2NhbmYoIiVkIiwmYXJbbisrXSk9PTEpOwoJaW50IGw9MCxoPW4tMSxhbnM9MCxMTWF4PTAsUk1heD0wOwogICAgLy9sIGlzIHRoZSBsZWZ0IGluZGV4CiAgICAvLyBoIGlzIHRoZSByaWdodCBpbmRleAogICAgLy9MTWF4IGlzIHRoZSBtYXhpbXVtIG9mIGFsbCB0aGUgaGVpZ2h0cyB1cCB0byBhbmQgaW5jbHVkaW5nIHRoYXQgcG9pbnQgYW5kCiAgICAvL1JNYXggaXMgdGhlIG1heGltdW0gb2YgaGVpZ2h0cyBmcm9tIHRoYXQgcG9pbnQgb253YXJkCiAgICB3aGlsZShsPGgpewogICAgICAgIC8vZmluZCBvdXQgdGhlIHNtYWxsZXIgb25lIG91dCBvZiBsZWZ0IGFuZCByaWdodCBpbmRleAoJICAgIGlmKGFyW2xdPGFyW2hdKXsKCSAgICAgICAgaWYoYXJbbF0+TE1heCl7CgkgICAgICAgICAgICBMTWF4PWFyW2xdOwoJICAgICAgICB9CgkgICAgICAgIGVsc2V7CiAgICAgICAgICAgICAgICAvL1RoZSBzbWFsbGVyIG9mIExNYXggYW5kIFJNYXggbWludXMgdGhlIGhlaWdodCBhdCB0aGF0IHBvaW50IGlzIHRoZSB3YXRlciBhbW91bnQuCgkgICAgICAgICAgICBhbnMrPShMTWF4LWFyW2xdKTsKCSAgICAgICAgfQoJICAgICAgICBsKys7CgkgICAgfQoJICAgIGVsc2V7CiAgICAgICAgICAgIC8vc3ltZXRyaWNhbGx5IG9wcG9zaXRlIGNvZGUgZm9yIHRoZSByaWdodCBzaWRlCgkgICAgICAgIGlmKGFyW2hdPlJNYXgpewoJICAgICAgICAgICAgUk1heD1hcltoXTsKCSAgICAgICAgfQoJICAgICAgICBlbHNlewoJICAgICAgICAgICAgYW5zKz0oUk1heC1hcltoXSk7CgkgICAgICAgIH0KCSAgICAgICAgaC0tOwoJICAgIH0KCX0KCXByaW50ZigiJWRcbiIsYW5zKTsKCXJldHVybiAwOwp9
NCAyIDQgMSA1IDMgMTYgNiAxNyAxOSA0IDEzIDUgMyAxMCAxMCAxMyA2IDIgMSA1IDE1IDEzIDE5IDE2IDkgMTMgMSA3IDE4IDIwIDEzIDkgNyAyIDEwIDggMTggNCA3IDUgOCAxMCAxMyA3IDE4IDE5IDIgMTkgOCAxMCAxMCAxNyA2IDYgMjAgMjAgMTEgMTAgMTEgMTMgOSA3IDEgMTAgNSAxMiAxNiAxMCA3IDE1IDEzIDEyIDEwIDEgMSA0IDIgMTYgMTAgMjAgMTcgMTEgMTkgMTkgMjAgOSAxMCAxNyA5IDE4IDggMTAgMTggOCAxOSAxNiAxNyAzIDEK
4 2 4 1 5 3 16 6 17 19 4 13 5 3 10 10 13 6 2 1 5 15 13 19 16 9 13 1 7 18 20 13 9 7 2 10 8 18 4 7 5 8 10 13 7 18 19 2 19 8 10 10 17 6 6 20 20 11 10 11 13 9 7 1 10 5 12 16 10 7 15 13 12 10 1 1 4 2 16 10 20 17 11 19 19 20 9 10 17 9 18 8 10 18 8 19 16 17 3 1