#include<bits/stdc++.h> using namespace std; int n,a[100],c[100]; void mergesort(int l,int r){ if(l>=r) return; int mid=(l+r)/2; mergesort(l,mid); mergesort(mid+1,r); int ilen=mid-1+1,jlen=r-mid; int i=l,j=mid+1,k=1; while(i<=mid&&j<=r){ if(a[i]<a[j]) c[k++]=a[i++]; else c[k++]=a[j++]; } while(i<=mid) c[k++]=a[i++]; while(j<=r) c[k++]=a[j++]; for(int i=1;i<=r-1+1;i++) a[l+i-1]=c[i]; } int main() { cin>>n; for(int i=1;i<=n;i++) cin>>a[i]; mergesort(1,n); for(int i=1;i<=n;i++) cout<<a[i]<<" "; return 0; } /************************************************************** Problem: 1010 User: zhuangsongyu Language: C++ Result: Wrong Answer ****************************************************************/