Cod sursa(job #1560884)

Utilizator TiberiuGCopaciu Tiberiu George TiberiuG Data 3 ianuarie 2016 14:23:23
Problema Subsir crescator maximal Scor 5
Compilator cpp Status done
Runda Arhiva educationala Marime 0.5 kb
# include <cstdio>
# include <deque>
# include <algorithm>

# define N 100010

using namespace std;

deque <int> q;
int n,d[N],a[N];

int main()
{
    freopen("scmax.in", "r", stdin);
    freopen("scmax.out", "w", stdout);

    scanf("%d\n", &n);
    for(int i=1; i<=n; ++i)
        scanf("%d ", &a[i]);

    for(int i=1; i<=n; ++i)
    {
        while(q.size() && a[q.back()]>=a[i]) q.pop_back();
        q.push_back(i);
        d[i]=q.size();
    }

    printf("%d\n", d[n]);
}