Pagini recente » Cod sursa (job #2965819) | Cod sursa (job #2208403) | Cod sursa (job #103967) | boji_round2 | Cod sursa (job #183424)
Cod sursa(job #183424)
#include <stdio.h>
#define INF 10000000
int ok[5001];
int main(){
int n,v[5001],i,j,p[5001],l[5001]={0},min=INF,poz,pozmax=0;
freopen("subsir2.in","r",stdin);
freopen("subsir2.out","w",stdout);
scanf("%d",&n);
for(i=1;i<=n;i++)
scanf("%d",&v[i]);
l[n]=1;
for(i=n-1;i>=1;i--){
min=l[i]=INF;
for(j=i+1;j<=n;j++){
if(v[j]>=v[i] && v[j]<min){
l[i]=l[j];
min=v[j];
p[i]=j;
}
if(v[j]>=v[i])
ok[j]=1;
}
if(l[i]==INF) l[i]=0;
l[i]++;
}
min=INF;
for(i=1;i<=n;i++)
if(l[i]<min && !ok[i]){
min=l[i];
poz=i;
}
printf("%d\n",min);
while(min){
printf("%d ",poz);
poz=p[poz];
min--;
}
return 0;
}