Cod sursa(job #687170)

Utilizator dragosd2000Dumitrache Dragos dragosd2000 Data 22 februarie 2012 10:09:20
Problema Subsir crescator maximal Scor 0
Compilator cpp Status done
Runda Arhiva educationala Marime 0.59 kb
#include<fstream.h>



ifstream fin("scmax.in");
ofstream fout("scmax.out");



int a[100],n,max,l[100],t;

void read()
{
	fin>>n;
	int i;
	for(i=1;i<=n;i++)
	{
		fin>>a[i];
		l[i]=1;
	}
}

void pd()
{
	int i,j;
	for(i=n-1;i>=1;i--)
	{
		for(j=i+1;j<=n;j++)
			if(l[i]<=l[j] && a[i]<a[j])
				l[i]=l[j]+1;
		max=l[i];
		t=i;
	}
}

void print()
{
	int i;
	fout<<a[t]<<' ';
	max--;
	for(i=t+1;i<=n;i++)
		if(l[i]==max && a[i]>a[i-1])
			{
				fout<<a[i]<<' ';
				max--;
			}
}


int main()
{
	read();
	pd();
	fout<<max<<'\n';
	print();
	return 0;
}