Pagini recente » Rezultatele filtrării | Cod sursa (job #434931)
Cod sursa(job #434931)
#include<cstdio>
using namespace std;
FILE *f=fopen("algsort.in","r"), *g=fopen("algsort.out","w");
long n,a[500000];
void quicksort(int lo, int hi)
{
long i=lo, j=hi, interm, x=a[(lo+hi)/2];
do
{
while(a[i]<x) i++;
while(a[j]>x) j--;
if(i<=j)
interm=a[i],
a[i]=a[j],
a[j]=interm,
i++,
j--;
}while(i<=j);
if(lo<j) quicksort(lo,j);
if(i<hi) quicksort(i,hi);
}
int main()
{
long i;
fscanf(f,"%d",&n);
for(i=0;i<n;i++)
fscanf(f,"%d",&a[i]);
quicksort(0,n-1);
for(i=0;i<n;i++)
fprintf(g,"%d ",a[i]);
return 0;
}