通常我们有两种二分
while(L<R){
int mid=(L+R)>>1;
if(check(mid)) L=mid+1;
else R=mid;
}
和
while(L+1<R){
int mid=(L+R)>>1;
if(check(mid)) L=mid;
else R=mid;
}
我曾以为这俩是一个东西,但是他们的答案和效果完全不同,而且统计答案的方法也很奇怪,有时要用L,有时用L-1,甚至有的时候要在定义其他变量来统计
为此我困惑了许久,自己太弱也没找到规律,bdfs亦未果
求大佬帮忙解释一下,谢谢了