Pagini recente » Cod sursa (job #3253635) | Cod sursa (job #3171308) | Cod sursa (job #1608371) | Cod sursa (job #226916) | Cod sursa (job #543016)
Cod sursa(job #543016)
//Bou Marian Catalin
#include<stdio.h>
int n, v[100003], val[100003], p[100003];
void afis(int a)
{
if(a==0) return;
afis(p[a]);
printf("%d ",v[a]);
}
int main()
{
int i,j, nr=0, max;
freopen("scmax.in", "r", stdin);
freopen("scmax.out", "w", stdout);
scanf("%d", %n);
for(i=1;i<=n;i++)
scanf("%d",v+i);
val[1]=1;
p[1]=0;
v[0]=0; val[0]=0;
max=0;
for(i=1;i<=n;i++)
{
for(j=i-1;j>0 && val[i]<val[j];--j);
p[i]=j;
val[i]=val[j]+1;
if(val[max]<val[i])max=i;
}
printf("%d\n", val[max]);
afis(max);
printf("\n");
return 0;
}