题解 100% AC
2025-07-28 18:23:39
发布于:江苏
3阅读
0回复
0点赞
#include<bits/stdc++.h>
using namespace std;
int n,a[1010],temp[1010];
void MergeSort(int l,int r){
if(l==r)return;
int mid =(l+r)>>1;
MergeSort(l,mid);
MergeSort(mid+1,r);
int i=l,j=mid+1,k=l;
while(i<=mid&&j<=r){
if(a[i]<=a[j])temp[k++]=a[i++];
else temp[k++]=a[j++];
}
while(i<=mid)temp[k++]=a[i++];
while(j<=r)temp[k++]=a[j++];
for(int i=l;i<=r;i++)a[i]=temp[i];
for(int i=1;i<=n;i++)cout<<a[i]<<" ";
cout<<endl;
}
int main(){
cin>>n;
for(int i=1;i<=n;i++)cin>>a[i];
MergeSort(1,n);
return 0;
}
这里空空如也
有帮助,赞一个