提交时间:2024-03-02 15:14:14
运行 ID: 134233
#include<bits/stdc++.h> using namespace std; int n,a[100001]; void msort(int l,int r) { if(l==r) return; int m=(l+r)/2,i,j,k,t[100001]; msort(l,m); msort(m+1,r); k=i=l,j=m+1; while(i<=m&&j<=r) { if(a[i]<=a[j]) t[k++]=a[i++]; else t[k++]=a[j++]; } while(i<=m) t[k++]=a[i++]; while(j<=r) t[k++]=a[j++]; for(int i=l;i<=r;i++) a[i]=t[i]; } int main() { cin>>n; for(int i=1;i<=n;i++) cin>>a[i]; msort(1,n); for(int i=1;i<=n;i++) cout<<a[i]<<' '; }