Pagini recente » Cod sursa (job #1283320) | Cod sursa (job #873838) | Cod sursa (job #2736737) | Cod sursa (job #2933614) | Cod sursa (job #1401712)
#include <cstdio>
#include <algorithm>
#define Nmax 100005
using namespace std;
int n,i,j,maxl,a[Nmax],l[Nmax],poz;
int main()
{
freopen("scmax.in","r",stdin);
freopen("scmax.out","w",stdout);
scanf("%d",&n);
for(i=1;i<=n;i++)
scanf("%d",&a[i]);
l[n]=1;
maxl=1;
for(i=n-1;i>=1;i--)
{
l[i]=1;
for(j=i+1;j<=n;j++)
if((a[i]<a[j]) && (l[i]<l[j]+1))
l[i]=l[j]+1;
if(maxl<l[i])
{
maxl=l[i];
poz=i;
}
}
printf("%d\n",maxl);
printf("%d ",a[poz]);
for(i=poz+1;i<=n;i++)
if((a[i]>a[poz]) && (l[i]==maxl-1))
{
printf("%d ",a[i]);
maxl--;
}
return 0;
}