Cod sursa(job #539901)

Utilizator @LynTirla Alin @Lyn Data 23 februarie 2011 14:36:40
Problema Subsir crescator maximal Scor 70
Compilator cpp Status done
Runda Arhiva educationala Marime 0.6 kb
#include<iostream>
#include<fstream>

using namespace std;

int sir[10001];
int maxa[10001];
int nr[10001];

int main()
{int n,i,maxi,subsir=0,d,k;
ifstream f1("scmax.in");
ofstream f2("scmax.out");
f1>>n;
for(i=1;i<=n;i++)
	{f1>>sir[i];
	maxa[i]=0;
	}
	maxa[1]=1;
for(i=2;i<=n;i++)
{maxi=0;
	for(d=1;d<i;d++)
		{if((sir[i]>sir[d])&&(maxa[d]>maxi)) maxi=maxa[d];
		}
		maxi++;
		maxa[i]=maxi;
if(subsir<maxi) subsir=maxi;
}
f2<<subsir<<endl;
k=0;
d=0;
for(i=n;i>=1;i--)
{if(maxa[i]==subsir-k)
{d++;
	nr[d]=sir[i];
	k++;
	}
}
for(i=d;i>=1;i--)
{f2<<nr[i]<<" ";
}
return 0;
}