Pagini recente » Cod sursa (job #1107710) | Cod sursa (job #2561014) | Cod sursa (job #101831) | Cod sursa (job #768884) | Cod sursa (job #1752308)
#include <iostream>
using namespace std;
int n,a[100000],l[100000],poz[100000],m,prim;
int main() {
freopen("scmax.in", "r", stdin);
freopen("scmax.out", "w", stdout);
cin>>n;
for(int i=0;i<n;i++)cin>>a[i];
int i, j;
for (i=n; i>0; i--){
l[i]=1;poz[i]=0;
for (j=i+1; j<=n; j++)
if (a[i] <= a[j] && l[i]<1+l[j])
{
l[i]=1+l[j]; poz[i]=j;
}
if(m<l[i])
{
m=l[i];
prim=i;
}
}
cout<<m<<endl;
for (i=prim; i>0; i=poz[i])cout<<a[i]<<" ";
}