Cod sursa(job #314218)

Utilizator klamathixMihai Calancea klamathix Data 10 mai 2009 21:49:22
Problema Subsir 2 Scor 55
Compilator cpp Status done
Runda Arhiva de probleme Marime 0.79 kb
#include<cstdio>

#define MAXN 6000
#define MINVAL 1 << 30

int i , j , N , A[MAXN] , track[MAXN] , left , right , k;

void min ( int a , int b)
{
     int minim = MINVAL;
     int poz;
     
     for( j = a ; j <= b; j++)
          if( A[j] < minim ) 
          {
          minim = A[j];
          poz = j;
          }
          
     track[++k] = poz;
      left = poz + 1;
}
     
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]);
         
    

    
    for( left = 1 , right = N ; left <= right ;)
         min(left , right);

printf("%d\n",k);         

for( i = 1 ; i <= k ; i++)
     printf("%d ",track[i]);

return 0;
}