/*insertion sort
26/04/13 20:15
*/
#include<iostream>
#include<cstring>
using namespace std;
int array[1000];
void insertsort(int a[],int len){
int i,j,key;
for(i=1;i<len;i++){ //已知array[0..i-1]已排序,将A[i]插入使得A[0..i]成为新的已排序数组
key=array[i];
for(j=i-1;j>=0;j--){
if(key<array[j]){
array[j+1]=array[j];
}
else break; //这个非常关键啊,如果没有此语句,在没有交换的时候会发生错误!!!!
}
array[j+1]=key;
}
}
int main(){
int num;
while(1){
memset(array,0,sizeof(array[0]));
cin>>num;
for(int i=0;i<num;i++) cin>>array[i];
insertsort(array,num);
for(int i=0;i<num;i++) cout<<array[i]<<" ";
cout<<endl;
}
return 0;
}