SOS 这两种写法不是一样的么,为什么一个A,一个WA
查看原帖
SOS 这两种写法不是一样的么,为什么一个A,一个WA
417968
pipideng楼主2020/11/25 15:56
int mid=a[(l+r)>>1];
int i=l,j=r;
while(i<=j)
{
	while(a[i]<mid) i++;
	while(a[j]>mid) j--;
	
	if(i<=j)
	{
		int t=a[i];
		a[i]=a[j];
		a[j]=t;
		
		i++,j--;
	}
}
if(l<j) qsort(l,j);
if(i<r) qsort(i,r);


int mid=((l+r)>>1);
int i=l,j=r;
while(i<=j)
{
	while(a[i]<a[mid]) i++;
	while(a[j]>a[mid]) j--;
	
	if(i<=j)
	{
		int t=a[i];
		a[i]=a[j];
		a[j]=t;
		
		i++,j--;
	}
}
if(l<j) qsort(l,j);
if(i<r) qsort(i,r);
2020/11/25 15:56
加载中...