Cod sursa(job #1203923)

Utilizator pavlov.ionPavlov Ion pavlov.ion Data 1 iulie 2014 15:53:09
Problema Subsir crescator maximal Scor 70
Compilator cpp Status done
Runda Arhiva educationala Marime 0.63 kb
#include<fstream>
using namespace std;
ifstream cin("scmax.in");
ofstream cout("scmax.out");
long long v[100000],l[100000],n,i,k,maxim,t;
int main() 
{
 cin>>n;
 	for(i=1;i<=n;i++)
  cin>>v[i];
	 l[n]=1;
	 for(k=n-1;k>=1;k--)
	 { maxim=0;
	   for(i=k+1;i<=n;i++)
		  if(v[i]>v[k] && l[i]>maxim)
				maxim=l[i];
			l[k]=1+maxim;
		}
		maxim=l[1];t=1;
		for(k=1;k<=n;k++)
	 	    if(l[k]>maxim)      
	 	    { maxim=l[k];t=k;}
	 	    cout<<maxim<<"\n"<<v[t]<<" ";
	 	    for(i=t+1;i<=n;i++)
                if(v[i]>v[t] && l[i]==maxim-1)
                { cout<<v[i]<<" ";
                maxim-- ;
				}	
	return 0;
}