Pagini recente » template/preoni-2006 | Istoria paginii runda/newcomers_2 | Cod sursa (job #983181) | Cod sursa (job #1925831) | Cod sursa (job #1266200)
#include <fstream>
using namespace std;
ifstream fin("scmax.in");
ofstream fout("scmax.out");
int n,i,j,maxim,v[100001],T[100001],L[100001],p,x,xp;
void drum(int poz){
if (poz!=0)
{
drum(T[poz]);
fout<<v[poz]<<" ";
}
}
int main()
{
fin>>n;
for (i=1;i<=n;i++)
fin>>v[i];
L[1]=1;
T[1]=0;
for (i=2;i<=n;i++)
{
maxim=0;
for (j=1;j<i;j++)
if (v[j]<v[i] && L[j]>maxim)
{
maxim=L[j];
p=j;
}
L[j]=1+maxim;
if (maxim!=0)
T[i]=p;
if (L[i]>x)
{
x=L[i];
xp=i;
}
}
fout<<x<<"\n";
drum(xp);
return 0;
}