rt,以下两种二分:
A:
while(l<=r){
int mid=(l+r)>>1;
if(a[mid]<=rest){
ans=mid;r=mid-1;
}
else l=mid+1;
}
B:
while(l<r){
int mid=(l+r)>>1;
if(a[mid]<=rest){
r=mid;
}
else l=mid+1;
}
将它们分别应用到 P1120 小木棍中,结果如下:
洛谷-二分 A
洛谷-二分 B
WZOI-二分 A
WZOI-二分 B
两份代码有且仅有二分不同,求问为何效率差距如此之大?