/*分治典型应用 快速排序*/
#include <cstdio>
#include <iostream>
#include <algorithm>
using namespace std ;
#define maxn 600
double num[maxn] ;
void swap(double &a , double &b){
double temp = a ;
a = b ;
b = temp ;
}
void Sort(int le , int re){
if(le >= re){
return;
}
double k = num[le] ;
int i = le , j = re ;
while(i!=j){
while(i<j && num[j] >k){
--j ;
}
swap(num[i] , num[j]) ;
while(i<j && num[i] <= k){
++ i ;
}
swap(num[i] , num[j]) ;
}//处理结束后 num[i] == k
Sort(le , i-1) ;
Sort(i+1 , re) ;
}
int main(){
int n ;
while(~scanf("%d" , &n)){
for(int i=0 ; i<n ; i++){
scanf("%lf" , &num[i]) ;
}
Sort(0 , n-1) ;
for(int i=0 ; i<n ; i++){
printf("%.2f " , num[i]) ;
}
}
return 0 ;
}