//区间[L,R]被划分成[l,mid],[mid+1,r]时
int bsearch_1(int l,int r)
{
while(l<r)
{
int mid=l+r>>1;
if(check(mid)) r=mid;//check()检查mid是否满足条件
else l=mid+1;
}
return l;
}
//区间[L,R]被划分成[l,mid-1],[mid,r]时
int bsearch_1(int l,int r)
{
while(l<r)
{
int mid=l+r+1>>1;//防止出现l=r-1的情况
if(check(mid)) l=mid;//check()检查mid是否满足条件
else r=mid-1;
}
return l;
}