Cod sursa(job #984621)

Utilizator dobrebogdanDobre Bogdan Mihai dobrebogdan Data 14 august 2013 22:12:41
Problema Subsir 2 Scor 45
Compilator cpp Status done
Runda Arhiva de probleme Marime 0.8 kb
#include<stdio.h>
int v[5005],d[5005];
unsigned a[5005],s[5005];
int main()
{
    freopen("subsir2.in","r",stdin);
    freopen("subsir2.out","w",stdout);
    unsigned n,i,m=0,k,j,p;
    int x;
    scanf("%u",&n);
    for(i=1;i<=n;i++)
    {
        scanf("%d",&v[i]);
        for(j=1;j<=m;j++)
            if(v[i]<d[j])
            {
             d[j]=v[i];
             a[i]=j;
             break;
            }
            if(j==m+1)
            {
                m++;
                d[m]=v[i];
                a[i]=m;
            }
    }
    printf("%u\n",m);
    p=0;
    for(j=1;j<=m;j++)
    {
        x=1000001;
    for(i=p+1;i<=n;i++)
        if(a[i]==j && v[i]<x)
        {
            x=v[i];
            p=i;
        }
        printf("%u ",p);
    }
    return 0;
}