#include <stdio.h>
#include <stdlib.h>
void partition(int a[],int s,int t,int &k)
{
int i,j,x;
i=s;j=t;
x=a[s];
do{
while (i<j&&x<a[j]) {
j--;
}
if (i<j) {
a[i++]=a[j];
}
while (i<j&&x>a[i]) {
i++;
}
if (i<j) {
a[j--]=a[i];
}
}while(i<j);
a[i]=x;
k=i;
}
void qsort(int a[],int i,int j)
{
int k;
if (i<j) {
partition(a, i, j, k);
qsort(a, i, k-1);
qsort(a, k+1, j);
}
}
int main()
{
int a[28]={84,92,78,67,21,79,23,57,86,32,46,19,22,90,15,69,42,13,47,38,55,34,18,43,26,94,72,62},i;
int n=28;
qsort(a, 0, n-1);
for (i=0; i<n; i++) {
printf("%d ",a[i]);
}
return 0;
}