void qsort(int L,int R)
{
int i,j,tmp;
i = L;
j = R;
tmp = (L+R)/2;
while(i<=j)
{
while(array[i]<array[tmp])
{
i++;
}
while(array[j]>array[tmp])
{
j--;
}
if(i<=j)
{
swap(array[i],array[j]);
i++;
j--;
}
}
if(L<j)
{
qsort(L,j);
}
if(R>i)
{
qsort(i,R);
}
}
这个代码前3个点WA
但是只要把tmp = (L+R)/2;这句改成
tmp = array[(L+R)/2]
然后把后面的array[tmp]改成tmp就能AC了
感觉没有什么区别啊
还有就是下载第一个测试点的数据在本地测试时
只能读入400多个数据 很奇怪