Cod sursa(job #680264)

Utilizator Bogdy4FuNBogdan Ciubotaru Bogdy4FuN Data 15 februarie 2012 10:20:00
Problema Subsir crescator maximal Scor 60
Compilator cpp Status done
Runda Arhiva educationala Marime 0.55 kb
#include<fstream>

using namespace std;

int main()
{
	ifstream f("scmax.in");
	ofstream g("scmax.out");
	int n,i,j;
	f>>n;
	int v[n],l[n],next[n],max,pozmax;
	for(i=1;i<=n;i++)
		f>>v[i];
	l[n]=1;
	next[n]=-1;
	for(i=n-1;i>=1;i--)
	{
		max=0;
		for(next[i]=-1,j=i+1;j<=n;j++)
			if(max<l[j] && v[i]<=v[j])
			{
				max=l[j];
				next[i]=j;
			}
		l[i]=max+1;
	}
	max=l[1];pozmax=1;
	for(i=2;i<=n;i++)
		if(max<l[i])
		{	
			max=l[i];
			pozmax=i;
		}
	g<<max<<"\n";
	for(i=pozmax;i!=-1;i=next[i])
		g<<v[i]<<" ";
	return 0;
}