Cod sursa(job #2540489)

Utilizator dianaICHBghita diana dianaICHB Data 7 februarie 2020 11:23:46
Problema Operatii Scor 100
Compilator cpp-64 Status done
Runda irim_eralumis Marime 0.89 kb
#include <cstdio>

using namespace std;
long long int v[1000005];
int main()
{
    freopen("operatii.in","r",stdin);
    freopen("operatii.out","w",stdout);
    long long int n,i,minn=0,maxx=0,cd=1;
    long long int sum=0;
    scanf("%lld",&n);
    for (i=1; i<=n; i++)
    {
        scanf("%lld",&v[i]);
        //printf("%lld %lld %lld %lld\n",v[i-2],v[i-1],v[i],v[i+1]);
        if (cd==1)
        {
            if (v[i-1]>v[i])
            {
                maxx=v[i-1];
                sum=sum+maxx-minn;
                cd=0;
            }
        }
        else
        {
            if (v[i-1]<v[i])
            {
            minn=v[i-1];
            cd=1;
            }
        }
        //printf("%lld %lld\n",maxx,minn);
    }
    if (v[n]>=v[n-1]&&v[n]>v[n+1])
    {
        maxx=v[n];
        sum=sum+maxx-minn;
    }
    printf("%lld",sum);
    return 0;
}