Pagini recente » Cod sursa (job #1620242) | Cod sursa (job #3138829) | Cod sursa (job #2879131) | Cod sursa (job #2196511) | Cod sursa (job #2041074)
#include <iostream>
#include <fstream>
using namespace std;
ifstream fin ("scmax.in");
ofstream fout ("scmax.out");
int maxim,lmax=0,n,v[100000],a[100000],l[100000],ultimpoz;
int afisare (int x)
{
if(a[x]>0)
afisare(a[x]);
else
{fout<<v[x]<<" ";return 0;}
fout<<v[x]<<" ";
}
int main()
{ fin>>n;
for(int i=1;i<=n;i++)
{
fin>>v[i]; maxim=0;
for(int j=1;j<=i-1;j++)
{
if(v[j]<v[i] && maxim<l[j] )
{
maxim=l[j]; a[i]=j;
}
}
l[i]=maxim+1;
if(l[i]>lmax)
{lmax=l[i];ultimpoz=i;}
}
fout<<lmax<<'\n';
afisare(ultimpoz);
return 0;
}