#define MAXSIZE 100
#include <stdio.h>
void print(const int *p,int len)
{
int i = 0;
for (; i < len; i++)
{
printf("%d ",p[i] );
}
printf("\n");
}
void swap(int *a,int i,int j)
{
int temp;
{
temp = a[i];
a[i] = a[j];
a[j] = temp;
}
}
int partition(int p[],int len)
{
if (len<=1)
{
return;
}
int mid = p[0];
int right = len-1;
int left=0;
while(left<right)
{
while(p[right]>=mid&&left<right)
{
right--;
p[left] = p[right];
}
while(p[left]<=mid && left<right)
{
left++;
p[right]=p[left];
}
}
p[left]=mid;
return left;
}
void quick_sort(int p[],int len)
{
int pivot;
if(len<=1)
{
return;
}
pivot=partition(p,len);
quick_sort(p,pivot);
quick_sort(p+pivot+1,len-pivot-1);
}
int main()
{
int a[MAXSIZE] = {0};
int len = 0;
char ch;
int num = 0;
printf("\n" );
while ((ch = getchar()) != '\n')
{
while(ch !=' '&&ch != '\n')
{
num = num*10 + ch-'0';
ch =getchar();
}
a[len++] = num;
num = 0;
if (ch == '\n')
{
break;
}
}
quick_sort(a,len);
print(a,len);
return 0;
}