社区讨论

并归tle了

P1177【模板】排序参与者 5已保存回复 7

讨论操作

快速查看讨论及其快照的属性,并进行相关操作。

当前回复
7 条
当前快照
1 份
快照标识符
@mj8drcst
此快照首次捕获于
2025/12/16 17:28
2 个月前
此快照最后确认于
2025/12/19 18:35
2 个月前
查看原帖
CPP
#include <bits/stdc++.h>
using namespace std;
typedef long long ll;
const int N=6e5+5;
ll a[N],b[N],ans,n;//b为临时数组 
void mergee(ll l,ll r)
{
	if(l>=r)
	{
		return ;
	}
	ll mid=(l+r)/2;
	ll i=l,j=mid+1,tot=l;
	while(i<=mid && j<=r)
	{
		if(a[i]<=a[j])
		{
			b[tot++]=a[i];
			i++;
		}
		else{
			b[tot++]=a[j];
			j++;
		}
	}
	while(i<=mid)
	{
		b[tot++]=a[i];
		i++;
	}
	while(j<=r)
	{
		b[tot++]=a[j];
		j++;
	}
	for(int i=1;i<=r;i++)
	{
		a[i]=b[i];
	}
	return ;
}
void m_sort(ll l,ll r)
{
	if(l<r)
	{
		ll mid=(l+r)/2;
		m_sort(l,mid);
		m_sort(mid+1,r);
		mergee(l,r);
	}
}
int main()
{
	ios::sync_with_stdio(false);
	cin.tie(0);
	cout.tie(0);
	cin>>n;
	for(int i=1;i<=n;i++)
	{
		cin>>a[i];
	}
	m_sort(1,n);
	for(int i=1;i<=n;i++)
	{
		cout<<a[i]<<" ";
	}
	
	
	return 0;
}

回复

7 条回复,欢迎继续交流。

正在加载回复...