Cod sursa(job #2626712)

Utilizator vasileefrosVasile Efros vasileefros Data 7 iunie 2020 19:54:14
Problema Sortare prin comparare Scor 100
Compilator cpp-64 Status done
Runda Arhiva educationala Marime 0.7 kb

#include<fstream>
#define IOS ios_base::sync_with_stdio(false);cin.tie(0);
using namespace std;

ifstream cin("algsort.in");
ofstream cout("algsort.out");

const int NMAX=510000;
long long a[NMAX];
int n;
void QuickSort(long long a[], int left, int right){
	int i=left, j=right;
	int tmp;
	 int pivot=a[(left+right)/2];

	while(i<=j){
		while (a[i]<pivot) i++;
		while (a[j]>pivot) j--;
		if (i<=j){
			tmp=a[i];
			a[i]=a[j];
			a[j]=tmp;
			i++; j--;
		}
	}
	if (left<j)
	   QuickSort(a,left,j);
	if (i<right)
	   QuickSort(a,i,right);
}

int main(){
	IOS;	cin>>n;
	for (int i=0; i<n; i++) cin>>a[i];

	QuickSort(a,0,n-1);


	for (int i=0; i<n; i++) cout<<a[i]<<"  ";
}