Cod sursa(job #371255)

Utilizator nicolaetitus12Nicolae Titus nicolaetitus12 Data 4 decembrie 2009 18:24:36
Problema Sortare prin comparare Scor 40
Compilator cpp Status done
Runda Arhiva educationala Marime 0.61 kb
#include <stdio.h>
#define N 500001
int sir[N];
int main ()
{freopen("algsort.in","r",stdin);
 int st,dr,aux,i,j,ultim,n;
 scanf("%d",&n);
 for (i=0;i<n;i++)
 {scanf("%d",&sir[i]);
 }
 st=0;dr=n-1;
 do
 {for (i=dr;i>st;i--)
  {if(sir[i]<sir[i-1])
   {aux=sir[i];
    sir[i]=sir[i-1];
    sir[i-1]=aux;
    ultim=i;
   }
  }
  st=ultim;
  
  for (j=st;j<dr;j++)
  {if(sir[j]>sir[j+1])
   {aux=sir[j];
    sir[j]=sir[j+1];
    sir[j+1]=aux;
    ultim=j;
   }
  }
  dr=ultim;
 }
 while(st<dr);



 freopen("algsort.out","w",stdout);
 for (i=0;i<n;i++)
 {printf("%d ",sir[i]);
 }
 
 
}