Cod sursa(job #286693)

Utilizator spidyvenomMarius Toma spidyvenom Data 24 martie 2009 08:17:51
Problema Subsir crescator maximal Scor 100
Compilator cpp Status done
Runda Arhiva educationala Marime 0.53 kb
#include<fstream.h>
#define max 100001
int l[max],v[max],n,s[max];
ifstream f("scmax.in");
ofstream g("scmax.out");
int main()
{
int k=1,i,j,x;
f>>n>>v[1];
s[k]=v[1];
l[1]=1;
for (i=2;i<=n;i++)
	{
	f>>v[i];
	for (j=1;j<=k;j++)
		if (s[j]>=v[i]) {s[j]=v[i];l[i]=j;break;}
		else
			if (s[k]<v[i]){s[++k]=v[i];l[i]=j;}
	}
g<<k<<'\n';
x=k;
for (j=n;j>=1;j--)
	if (l[j]==k)
		{
		if(s[k]!=v[j]) s[k]=v[j];
		k--;
		}
for (i=1;i<=x;i++) g<<s[i]<<" ";
//cout<<'\n';
//for (i=1;i<=n;i++) cout<<l[i]<<" ";

return 0;
}