这一波是搬运家:
【模板+讲解】二分答案_Mashiro_ylb的博客-CSDN博客 (没什么讲解)
【洛谷日报#13】浅谈二分的边界问题 - 知乎 (讲解版)
基本上是两种写法,带=和不带=,带=的需要记录一下答案,不带=的一般以l为最终答案,这边推荐使用 l<=r 的格式,比较万能。
int l=1,r=maxn,ans;
while(l<=r){
int mid=(l+r)>>1;
if(check[mid]){
ans=mid;
l=mid+1;
}
else r=mid-1;
}