Pagini recente » Cod sursa (job #2325388) | Cod sursa (job #1919205) | Cod sursa (job #2503375) | Cod sursa (job #2029716) | Cod sursa (job #312322)
Cod sursa(job #312322)
# 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=0;
for(j=1;j<i;j++)
if (a[j]<=a[i] && max<b[j])
max=b[j];
b[i]=max+1;
}
max=0;
for (i=1;i<=n;i++)
if (b[i]>max)
max=b[i];
printf ("%i\n",max);
k=max;
x=10000;
while (k)
{
min=10000;
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;
}