各位神犇帮我纠一下代码
  • 板块灌水区
  • 楼主mndogdied
  • 当前回复3
  • 已保存回复3
  • 发布时间2024/9/13 05:45
  • 上次更新2024/9/13 16:45:58
查看原帖
各位神犇帮我纠一下代码
1383979
mndogdied楼主2024/9/13 05:45

一个归并排序而已,橙题你们想水我就发

#include<bits/stdc++.h>
using namespace std;
//#define int long long
#define con continue
#define randuse srand(time(0))
int n,a[100001],b[100001];
void m_sort(int l,int mid,int r)
{
	int idx=0,lt=l,rt=mid+1;
	while(lt<=mid&&rt<=r)
	{	
		idx++;
		if(a[lt]<=a[rt])
		{
			b[idx]=a[lt];
			cout<<'-';
			lt++;
		}
		else
		{
			b[idx]=a[rt];
			cout<<'+';
			rt++;
		}
	}
	while(lt<=mid)
	{
		idx++;
		b[idx]=a[lt];
		cout<<'*';
		lt++;
	}
	while(rt<=r)
	{	
		idx++;
		cout<<'/';
		b[idx]=a[rt];
		rt++;
	}
	for(int i=l;i<=r;i++)
	{
		a[i]=b[i];
	}
	return;
}
void M_sort(int l,int r)
{
	int mid=(l+r)/2;
	if(l==mid||mid+1==r) return;
	M_sort(l,mid);
	M_sort(mid+1,r);
	m_sort(l,mid,r);
	return;
}
signed main()
{
	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;
}
2024/9/13 05:45
加载中...