求助!关于二分的效率区别
  • 板块学术版
  • 楼主ARIS2_0
  • 当前回复9
  • 已保存回复9
  • 发布时间2024/10/18 17:42
  • 上次更新2024/10/18 20:18:43
查看原帖
求助!关于二分的效率区别
1340759
ARIS2_0楼主2024/10/18 17:42

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

两份代码有且仅有二分不同,求问为何效率差距如此之大?

2024/10/18 17:42
加载中...