Pagini recente » Cod sursa (job #2870875) | Cod sursa (job #1524999) | Cod sursa (job #2301675) | Cod sursa (job #2607894) | Cod sursa (job #715407)
Cod sursa(job #715407)
#include<stdio.h>
int a[5005],n;
void cel_mai_mic_scm(int a[], int n)
{
int b[5005], i,j,vmax,poz, lmax,vmin,p,x;
lmax=0;
for (i=n;i>=1;i--)
{
vmax=0;
for (j=i+1;j<=n;j++)
if (a[i]<=a[j] && b[j]>vmax) {vmax=b[j];}
b[i]=vmax+1;
if (b[i]>=lmax){lmax=b[i];poz=i;}
}
printf("%d\n",lmax);
for (i=1;i<=lmax;i++)
{
x=1000001;
p=poz;
for (j=poz;j<=n;j++)
if (b[j]==lmax+1-i && a[j]<x[i])
{
x=j;
p=j;
}
printf("%d ",x);
poz=p;
}
}
int main()
{
freopen("subsir2.in","r",stdin):
freopen("subsir2.out","w",stdout);
scanf("%d",&n);
for (i=1;i<=n;i++) scanf("%d",&a[i]);
cel_mai_mic_scm(a,n);
fclose(stdin);
fclose(stdout);
return 0;
}