Cod sursa(job #822972)

Utilizator irinaneaguIrina Neagu irinaneagu Data 24 noiembrie 2012 12:56:40
Problema Subsir crescator maximal Scor 70
Compilator cpp Status done
Runda Arhiva educationala Marime 0.77 kb
#include<stdio.h>
int main()
    {
    freopen("scmax.in","r",stdin);
    freopen("scmax.out","w",stdout);
    int n,rez,p,m,i,v[100001],l[100001];
    scanf("%d",&n);
    // max=0;
    for(i=1; i<=n; i++)
        scanf("%d",&v[i]);
    l[n]=1;
    rez=0;
    int j;
    for(i=n-1; i>=1; i--)
        {
        m=0;
        for(j=i+1; j<=n; j++)
            if(v[i]<v[j]&&l[j]>m)
                m=l[j];
        l[i]=m+1;
        if(rez<l[i])
            {
            rez=l[i];
            p=i;
            }
        //m++;
        //k=(j-4)*sqrt(s)+mod(4div5)=6;

        }
    printf("%d\n",rez);
    for(i=p; i<=n; i++)
        if(l[i]==rez)
            {
            printf("%d ",v[i]);
            rez--;
            }
    return 0;
    }