Pagini recente » Cod sursa (job #3173050) | Cod sursa (job #3004019) | Cod sursa (job #1417638) | Cod sursa (job #405030) | Cod sursa (job #312323)
Cod sursa(job #312323)
# include <stdio.h>
int a[10000],b[10000],c[10000],i,j,max,min,x,n,k,p;
int main ()
{
freopen ("subsir2.in","r",stdin);
freopen ("subsir2.out","w",stdout);
scanf ("%i",&n);
for (i=1;i<=n;i++)
scanf ("%i",&a[i]);
b[1]=1;
for (i=2;i<=n;i++)
{
max=-1000001;
for(j=1;j<i;j++)
if (a[j]<=a[i] && max<b[j])
max=b[j];
b[i]=max+1;
}
max=-1000000;
for (i=1;i<=n;i++)
if (b[i]>max)
max=b[i];
printf ("%i\n",max);
k=max;
x=1000001;
while (k)
{
min=1000001;
for (i=1;i<=n;i++)
{
if (b[i]==k && b[i]<x && a[i]<min)
{
min=a[i];
p=i;
}
c[k]=p;
x=min;
}
k--;
}
for (i=1;i<=max;i++)
printf ("%i ",c[i]);
return 0;
}