Cod sursa(job #443911)

Utilizator vladtarniceruVlad Tarniceru vladtarniceru Data 18 aprilie 2010 20:34:32
Problema Sortare prin comparare Scor 100
Compilator cpp Status done
Runda Tema 10D #1 Marime 0.51 kb
#include<fstream.h>
using namespace std;
 ifstream f("algsort.in");
 ofstream g("algsort.out");
    int n,i,v[500001];
    int qs(int in,int sf){
		int i=in,j=sf,m=v[(in+sf)/2],x;
		do{
			while(v[i]<m) ++i;
			while(v[j]>m) --j;
			if(i<=j){
				x=v[i];
				v[i]=v[j];
				v[j]=x;
				++i;--j;
			}
		}while(i<=j);
		if(in<j) qs(in,j);
		if(i<sf) qs(i,sf);
	}
    int main(){
		f>>n;
		for(i=1;i<=n;++i) f>>v[i];
		qs(1,n);
		for(i=1;i<=n;++i) g<<v[i]<<' ';
		g<<'\n';
		g.close();
		return 0;
	}