Pagini recente » Cod sursa (job #2011476) | Cod sursa (job #1992089) | Cod sursa (job #766898) | Cod sursa (job #1181687) | Cod sursa (job #610178)
Cod sursa(job #610178)
#include<stdio.h>
long v[5001],b[5001],max,i,n,j,r,u,c[5001];
int main()
{
freopen("subsir2.in","r",stdin);
freopen("subsir2.out","w",stdout);
scanf("%d",&n);
for (i=1;i<=n;i++)
scanf("%ld",&v[i]);
b[1]=1;
for (i=2;i<=n;i++)
{
max=0;
for (j=1;j<=i;j++)
if (v[i]>v[j])
{
if (max<b[j]+1)
max=b[j]+1;
}
b[i]=max;
}
max=0;
for (i=1;i<=n;i++)
if (max<b[i])
max=b[i];
printf("%ld\n",max);
for (i=n;i>=1;i--)
if (b[i]==max)
{
c[++u]=i;
max--;
}
for (i=u;i>=1;i--)
printf("%ld ",c[i]);
}