莫名只有40分(明明理论上没问题的)
查看原帖
莫名只有40分(明明理论上没问题的)
248242
Bacteria楼主2021/11/24 17:48

第一个WA的点(第一点)是1000个数

但是

我自己打1000个数输入没有任何问题,而数据却显示出一种数字不够1000的感觉

虽然我自己的1000个数据排出来也有问题

求大佬康康我的问题所在

#include<bits/stdc++.h>
using namespace std;
int a[1000001];
void p(int l,int r)
{
	if(l>=r)
	return;
	int n=a[(l+r)/2],i=l,j=r;
	while(i<=j)
	{
		while(a[i]<n)
		i++;
		while(a[j]>n)
		j--;
		if(i<=j)
		{
		swap(a[i],a[j]);
		i++;
		j--;
		}
	}
	p(l,(l+r)/2);
	p((l+r)/2+1,r);
}
int main()
{
	int n;
	cin>>n;
	for(int i=1;i<=n;++i)
	cin>>a[i];
	p(1,n);
	for(int i=1;i<=n;++i)
	cout<<a[i]<<" ";
	return 0;
}
2021/11/24 17:48
加载中...