Pagini recente » Cod sursa (job #10728) | Cod sursa (job #848881) | Cod sursa (job #2764479) | Cod sursa (job #1056376) | Cod sursa (job #1714163)
#include <iostream>
#include <fstream>
using namespace std;
ifstream fin("scmax.in");
ofstream fout("scmax.out");
long long v[100001],lg[100001],a[100001];
int n,rez,pf,i,j;
int main()
{
fin>>n;
for(i=1;i<=n;i++)
{
lg[i]=1;
fin>>v[i];
for(j=1;j<i;j++)
{
if(v[i]>v[j] && lg[i]<lg[j]+1)
lg[i]=lg[j]+1;
if(lg[i]>rez)
{rez=lg[i];
pf=i;
}
}
}
fout<<rez<<endl;
int nr=v[pf];
a[1]=nr;
int j;
for(i=pf,j=2;i>0;i--)
if(v[i]<nr){
nr=v[i];
a[j]=v[i];
j++;
}
for(j=j-1;j>0;j--)
fout<<a[j]<<" ";
return 0;
}