二分模板
rt,区间左闭右开
注意右端点初值为max+1(右边开区间
小于等于这个数(或刚好满足或差一点满足check)
while(l<r){
int mid=(l+r)>>1;
if(check(mid)){
l=mid;
}else r=mid;
}
return l;
rt,区间左闭右开
注意右端点初值为max+1(右边开区间
小于等于这个数(或刚好满足或差一点满足check)
while(l<r){
int mid=(l+r)>>1;
if(check(mid)){
l=mid;
}else r=mid;
}
return l;