Pagini recente » Cod sursa (job #1114078) | Cod sursa (job #1938954) | Cod sursa (job #365565) | Cod sursa (job #1942348) | Cod sursa (job #1529990)
#include <fstream>
using namespace std;
ifstream f("scmax.in");
ofstream g("scmax.out");
int a[100000],l[100000],u[100000];
int main()
{
int n,mx=-1;
f>>n;
for(int i=1;i<=n;i++)
f>>a[i];
l[1]=1;
for(int i=2;i<=n;i++){
int cmx=0;
for(int j=1;j<i;j++){
if(a[i]>a[j])
cmx=max(l[j],cmx);
}
l[i]=cmx+1;
mx=max(mx,l[i]);
}
g<<mx;
int cmx;
cmx=mx;
int x=1;
for(int i=n;i>0;i--){
if(l[i]==cmx){
u[i]=1;
cmx--;
}
}
g<<endl;
for(int i=1;i<=n;i++)
if(u[i])
g<<a[i]<<' ';
return 0;
}