Pagini recente » Cod sursa (job #2424397) | Cod sursa (job #3224836) | Cod sursa (job #867679) | Cod sursa (job #3157709) | Cod sursa (job #303416)
Cod sursa(job #303416)
#include <stdio.h>
#define Nmax 100100
int n,v[Nmax],b[2][Nmax],max,maxim;
void afisare(int maxim)
{
if(b[1][maxim])
afisare(b[1][maxim]);
printf("%d ",v[maxim]);
}
int main()
{
freopen("scmax.in","r",stdin);
freopen("scmax.out","w",stdout);
int i,j;
scanf("%d",&n);
for(i=1;i<=n;++i)
{
scanf("%d",&v[i]);
max=0;
for(j=0;j<i;++j)
if(v[j]<v[i])
if(b[0][j]>b[0][max])
max=j;
b[0][i]=b[0][max]+1;
if(b[0][i]>b[0][maxim])
maxim=i;
b[1][i]=max;
}
printf("%d\n",b[0][maxim]);
afisare(maxim);
return 0;
}