Pagini recente » Cod sursa (job #2125032) | Cod sursa (job #370399) | Cod sursa (job #1370505) | Cod sursa (job #1093702) | Cod sursa (job #369437)
Cod sursa(job #369437)
#include <stdio.h>
#define DIM 100000
long v[DIM], l[DIM], n, i, k, max, t;
int main()
{
freopen("scmax.in","r",stdin);
freopen("scmax.out","w",stdout);
scanf("%ld",&n);
for (i=1;i<=n;++i)
scanf("%ld",&v[i]);
l[n]=1;
for (k=n-1;k>=1;--k)
{
max=0;
for (i=k+1;i<=n;++i)
if (v[i]>v[k] && l[i]>max)
max=l[i];
l[k]=max+1;
}
max=l[1];
t=1;
for (k=1;k<=n;++k)
if (l[k]>max)
{
max=l[k];
t=k;
}
printf("%d\n",max);
printf("%d ",v[t]);
for (i=t+1;i<=n;++i)
if (v[i]>v[t] && l[i]==max-1)
{
printf("%d ",v[i]);
--max;
}
return 0;
}