Cod sursa(job #1677526)

Utilizator antanaAntonia Boca antana Data 6 aprilie 2016 17:22:40
Problema Operatii Scor 100
Compilator cpp Status done
Runda Arhiva de probleme Marime 0.57 kb
#include <cstdio>
#include<deque>
using namespace std;
deque<int>d;
long long rez;
int main()
{
    freopen("operatii.in", "r", stdin);
    freopen("operatii.out", "w", stdout);
    int n, x, pp, i;
    scanf("%d", &n);
    d.push_back(0);
    for(i=1;i<=n;i++)
    {
        scanf("%d", &x);
        pp=0;
        while(!d.empty()&&d.back()>=x)
        {
            d.pop_back();
            pp=1;
        }
        if(!pp)
            if(!d.empty())
                rez+=x-d.back();
        d.push_back(x);
    }
    printf("%lld", rez);
    return 0;
}