Pagini recente » Cod sursa (job #1600481) | Cod sursa (job #886833) | Cod sursa (job #150560) | Cod sursa (job #1300880) | Cod sursa (job #895467)
Cod sursa(job #895467)
#include <iostream>
#include <fstream>
using namespace std;
int n,x[100000],l[100000],ant[100000];
ofstream out("scmax.out");
int main()
{
ifstream in("scmax.in");
in>>n;
int i,lmax,a,p,j,val;
for(i=0;i<n;i++)
in>>x[i];
in.close();
for(i=0;i<n;i++)
{
lmax=0;a=-1;
for(j=0;j<i;j++)
if(x[i]>x[j])
if(l[j]>lmax)
{lmax=l[j];a=j;}
l[i]=lmax+1;
ant[i]=a;
}
lmax=0;p=0;
for(i=0;i<n;i++)
if(l[i]>lmax){lmax=l[i];p=i;}
out<<lmax<<endl;
val=0;
for(i=0;i<=p;i++)
{
if(l[i]>val)
{
out<<x[i]<<" ";
val++;
}
}
out.close();
return 0;
}