Friday 20 February 2015

Codeforces Round #276 (Div. 1) Kindergarten

Problem: Kindergarten

///     Raihan Ruhin
///     CSE, Jahangirnagar University.
///     Dhaka-Bangladesh.
///     id: raihanruhin (topcoder / codeforces / codechef / hackerrank / uva / uvalive / spoj), 3235 (lightoj)
///     mail: raihanruhin@ (yahoo / gmail / facebook)
///     blog: ruhinraihan.blogspot.com

#include<bits/stdc++.h>
using namespace std;

#define SET(a) memset(a,-1,sizeof(a))
#define CLR(a) memset(a,0,sizeof(a))
#define PI acos(-1.0)

#define MOD 1000000007
#define MX 1000010

long long arr[MX];

int main()
{
    ios_base::sync_with_stdio(0);cin.tie(0);
    int tc,kk=1, n;
    long long inc=0, dec=0,tmp=0;

    cin>>n;

    for(int i=0;i<n;i++) cin>>arr[i];

    for(int i=1;i<n;i++)
    {
        if(arr[i]>arr[i-1])
        {
            tmp=inc;
            inc=max(dec, inc+arr[i]-arr[i-1]);
            dec=max(tmp, dec);
        }
        else
        {
            tmp=dec;
            dec=max(inc, dec+arr[i-1]-arr[i]);
            inc=max(inc, tmp);
        }
    }
    cout<<max(inc, dec);
    return 0;
}

No comments:

Post a Comment