Pagini recente » Cod sursa (job #1108796) | Cod sursa (job #2703396) | Istoria paginii runda/info_conquiztador002/clasament | Cod sursa (job #613861) | Cod sursa (job #1785929)
#include <iostream>
#include <fstream>
using namespace std;
int a[100001],n,l[100001],lmax=0,imax=0;
void citire()
{
ifstream fin("scmax.in");
fin>>n;
for(int i=0;i<n;i++)
fin>>a[i];
}
void lungimi()
{
for(int i=n-1;i>=0;i--)
{
int Max=0;
for(int j=i+1;j<n;j++)
if(a[j]>a[i])
{
Max=l[j];
break;
}
l[i]=Max+1;
if(l[i]>lmax)
{
lmax=l[i];
imax=i;
}
}
}
void afisare()
{
ofstream fout("scmax.out");
fout<<lmax<<"\n"<<a[imax]<<" ";
for(int i=imax+1,m=lmax;i<n;i++)
if(l[i]=m-1)
fout<<a[i++]<<" ";
}
int main()
{
citire();
lungimi();
afisare();
return 0;
}