Cod sursa(job #1174156)

Utilizator suzanicaSuzanica Mihu suzanica Data 22 aprilie 2014 10:26:18
Problema Subsir crescator maximal Scor 70
Compilator cpp Status done
Runda Arhiva educationala Marime 0.7 kb
#include<fstream>
using namespace std;
int v[100000],l[100000],n,i,t,k,max1;
int main()
{
    ifstream f("scmax.in");
    ofstream g("scmax.out");
    f>>n;
    for(i=1;i<=n;i++)
      f>>v[i];
     l[n]=1;
     for(k=n-1;k>=1;k--)
     {
         max1=0;
         for(i=k+1;i<=n;i++)
           if(v[i]>v[k]&&l[i]>max1)
           max1=l[i];
         l[k]=1+max1;
     }
     max1=l[1];
     t=1;
     for(i=1;i<=n;i++)
       if(l[i]>max1)
       {
           max1=l[i];
           t=i;
       }
       g<<max1<<"\n";
       g<<v[t]<<" ";
     for(i=t+1;i<=n;i++)
       if(v[i]>v[t]&&l[i]==max1-1)
       {
           g<<v[i]<<" ";
           max1--;
       }
       return 0;
}