Cod sursa(job #891925)

Utilizator OpportunityVlad Negura Opportunity Data 25 februarie 2013 21:16:07
Problema Sortare prin comparare Scor 100
Compilator cpp Status done
Runda Arhiva educationala Marime 0.49 kb
#include <fstream>
using namespace std;

ifstream fi("algsort.in");
ofstream fo("algsort.out");

long a[500000],n;

void qsort(long l, long r){
	long i=l,j=r,m=a[(i+j)/2],aux;
	while (i<j){
		while (a[i]<m) i++;
		while (a[j]>m) j--;
		if (i<=j) aux=a[i],a[i]=a[j],a[j]=aux,i++,j--;
	}
	if (i<r) qsort(i,r);
	if (j>l) qsort(l,j);
}

int main(){
	
	fi >> n;
	for (long i=0; i<n; i++) fi >> a[i];
	qsort(0,n-1);
	for (long i=0; i<n; i++) fo << a[i] << " ";
	
	return 0;
}