Cod sursa(job #1404076)

Utilizator VladuZ1338Vlad Vlad VladuZ1338 Data 27 martie 2015 19:17:54
Problema Subsir crescator maximal Scor 20
Compilator cpp Status done
Runda Arhiva educationala Marime 0.62 kb
#include <cstdio>

using namespace std;

int n, v[100001], s[100001], i, k, maxi=0, s2[100001];

int main()
{
    freopen ("scmax.in", "r", stdin);
    freopen ("scmax.out", "w", stdout);
    scanf ("%d", &n);
    for (i=1; i<=n; i++) scanf ("%d", &v[i]);
    for (i=1; i<=n; i++)
    {
        if (v[i]>s[k]) s[++k]=v[i];
        if (v[i]<s[k])
        {
            if (k>maxi) {maxi=k; for (i=1; i<=maxi; i++) s2[i]=s[i];}
            k=1,s[k]=v[i];
        }
    }
    if (k>maxi) {maxi=k; for (i=1; i<=maxi; i++) s2[i]=s[i];}
    printf ("%d\n", maxi);
    for (i=1; i<=maxi; i++) printf ("%d ", s2[i]);
}