Cod sursa(job #862981)

Utilizator constantinsorinconstantin sorin constantinsorin Data 23 ianuarie 2013 09:05:27
Problema Subsir crescator maximal Scor 0
Compilator cpp Status done
Runda Arhiva educationala Marime 0.77 kb
#include<fstream>
using namespace std;
ifstream f("scmax.in");
ofstream g("scmax.out");
 
int n,v[100],l[100];
 
void cit()
{
    int i;
    f>>n;
    for(i=1;i<=n;i++)
        f>>v[i];
}
void prdinam()
{
    int i,max,t,j;
    l[n]=1;
    for(i=n-1;i>=1;i--)
    {
        max=0;
        for(j=i+1;j<=n;j++)
            if(max<l[j]&&v[i]<v[j])max=l[j]; 
        l[i]=max+1;
         
    }
     
    max=l[1];t=1;
    for(i=1;i<=n;i++)
        if(max<l[i])
        {
            max=l[i];
            t=i;
        }
    g<<max<<'\n';
    g<<v[t]<<' ';
    for(i=t+1;i<=n;i++)
     if(v[i]>=v[t] && l[i]==max-1)
        {
         g<<v[i]<<' ';
         max--;
          
        }
}
int main()
{
    cit();
    prdinam();
    return 0;
}