Pagini recente » Cod sursa (job #1738468) | Cod sursa (job #3206598) | Cod sursa (job #1572338) | Profil judy_k | Cod sursa (job #240112)
Cod sursa(job #240112)
#include <stdio.h>
int A[500001];
int pivot(int st,int dr)
{
int x=A[st];
while (st<dr)
{
while (st<dr && x<=A[dr]) dr--;
A[st] = A[dr];
while (st<dr && x>=A[st]) st++;
A[dr] = A[st];
}
A[st] = x;
return st;
}
void sort(int st,int dr)
{
if (st<dr)
{
int m = pivot(st,dr);
sort(st,m-1);
sort(m+1,dr);
}
}
int main()
{
FILE *in = fopen("algsort.in","r");
FILE *out = fopen("algsort.out","w");
int n,i;
fscanf(in,"%d",&n);
for (i=1;i<=n;i++) fscanf(in,"%d",&A[i]);
sort(1,n);
for (i=1;i<=n;i++) fprintf(out,"%d ",A[i]);
}