Cod sursa(job #1017502)

Utilizator PasparanPasparan Ana-Maria Pasparan Data 27 octombrie 2013 20:18:01
Problema Sortare prin comparare Scor 100
Compilator cpp Status done
Runda Arhiva educationala Marime 0.66 kb
#include <iostream>
#include <fstream>

using namespace std;

ifstream f("algsort.in");
ofstream g("algsort.out");

int a[500001];
int i,n;

void quiksort(int st,int dr)
{int aux,j,m;
    i=st;j=dr;

    m=a[(st+dr)/2];
    i=st; j=dr;
   do
   {while(a[i]<m)
   i++;
   while(a[j]>m)
   j--;
   if(i<=j)
   {
       aux=a[j];a[j]=a[i];a[i]=aux;
       i++;j--;
   }
   }
   while(j>i);

    if(st<j) quiksort(st,j);
    if(i<dr) quiksort(i,dr);
}
int main()
{
    int i;
    f>>n;
    for(i=1;i<=n;i++)
        f>>a[i];
    quiksort(1,n);
    for(i=1;i<=n;i++)
        g<<a[i]<<" ";
    f.close(); g.close();
    return 0;
}