#include<iostream>
using namespace std;
int partition(int arr[], int low, int end) {
int i=low;
int j=end+1;
int x=arr[low];
while (1) {
while (i < end && arr[++i] < x);
while (arr[--j] > x);
if (i >= j) break;
swap(arr[i],arr[j]);
}
swap(arr[low],arr[j]);
return j;
}
void quicksort(int arr[], int low, int end){
if (low < end){
int p=partition(arr, low, end);
quicksort(arr, low, p-1);
quicksort(arr, p+1, end);
}
}
int main() {
int arr[] = {5,13,6,24,2,8,19,27,6,12,1,17};
int N=12;
int n;
//cin>>n;
//for (int i=0; i<n; i++){
// cin>>arr[i];
//}
quicksort(arr, 0, N-1);
for (int i=0; i<N; i++){
cout<<arr[i]<<" ";
}
}