Cod sursa(job #587800)

Utilizator predator5047Butiu Alexandru Octavian predator5047 Data 5 mai 2011 21:44:47
Problema Sortare prin comparare Scor 100
Compilator cpp Status done
Runda Arhiva educationala Marime 0.63 kb
#include <cstdio>
#include <algorithm>
FILE *g=fopen("algsort.in","r");
FILE *z=fopen("algsort.out","w");
using namespace std;
int n,v[500500];
void sort(int l,int r)
{
    int i=l,j=r;
    int x=v[(l+r)/2];
    while(i<=j)
    {
        while(v[i]<x)
        i++;
        while(v[j]>x)
        j--;
        if(i<=j)
        {
            swap(v[i],v[j]);
            i++;
            j--;
        }
    }
    if(l<j)
    sort(l,j);
    if(i<r)
    sort(i,r);
}
int main()
{
    int i;
    fscanf(g,"%d",&n);
    for(i=1;i<=n;i++)
    fscanf(g,"%d",&v[i]);
    sort(1,n);
    for(i=1;i<=n;i++)
    fprintf(z,"%d ",v[i]);
    return 0;
}