Pagini recente » Cod sursa (job #433879) | Cod sursa (job #1640833) | Cod sursa (job #3157464) | Cod sursa (job #1426974) | Cod sursa (job #2851546)
#include <bits/stdc++.h>
#define ull unsigned long long
using namespace std;
ifstream in("algsort.in");
ofstream out("algsort.out");
const int N=5e5+5;
ull v[N];
void QuickSort(int n,int st,int dr)
{
if(st<dr)
{
int m=(st+dr)/2;
swap(v[st],v[m]);
int i=st,j=dr,d=0;
while(i<j)
{
if(v[i]>v[j])
{
swap(v[i],v[j]);
d=1-d;
}
i+=d;
j-=1-d;
}
QuickSort(n,st,i-1);
QuickSort(n,i+1,dr);
}
}
int main()
{
int n;
in>>n;
for(int i=1;i<=n;i++)
in>>v[i];
QuickSort(n,1,n);
for(int i=1;i<=n;i++)
out<<v[i]<<' ';
return 0;
}