Pagini recente » Istoria paginii fmi-no-stress-2010/clasament | Profil Sh4rky29 | Profil Szakats | Istoria paginii utilizator/diana.ardelean | Cod sursa (job #1589852)
#include <stdio.h>
#include <algorithm>
using namespace std;
int v[500005];
void quickSort(int l, int r){
int mn,mx,mj;
mn = l;
mx = r;
mj = (l+r)/2;
do{
while(v[mn] < v[mj]){
mn++;
}
while(v[mx] > v[mj]){
mx--;
}
if(mn <= mx){
swap(v[mn],v[mx]);
mn++;
mx--;
}
}while(mn <= mx);
if(l < mx){
quickSort(l, mx);
}
if(mn < r){
quickSort(mn, r);
}
}
int main()
{
int n;
freopen("algsort.in", "r", stdin);
freopen("algsort.out", "w", stdout);
scanf("%d",&n);
for(int i = 1;i <= n;i++){
scanf("%d",&v[i]);
}
quickSort(1, n);
for(int i = 1;i <= n;i++){
printf("%d ",v[i]);
}
return 0;
}