二分模板

第一个>=x的位置 l
while (l <= r)
{
int mid = (l + r) / 2;
if (lst[mid] < x) l = mid + 1;
else r = mid - 1;
}

最后一个=x的位置 l-1
while (l <= r)
{
int mid = (l + r) / 2;
if (lst[mid] <= x) l = mid + 1;
else r = mid - 1;
}

while(l<r)
如果为check成功 l=mid,else r=mid-1 mid=(l+r+1)/2
如果为check成功 r=mid,else l=mid+1 mid=(l+r)/2
保证得以结束

二分类型有交互 https://blog.csdn.net/asbbv/article/details/113963861

值的二分https://blog.csdn.net/asbbv/article/details/113962748

独立合并的二分https://ac.nowcoder.com/acm/problem/213483

全部评论

相关推荐

钱嘛数字而已:辅导员肯定不能同意,不然你出事了,他要承担责任。但是,脚和脑子都长在你自己身上,使用它还需要向辅导员报告么? 辅导员必须按流程拒绝你,然后你拿出成年人的态度,做自己的选择。
点赞 评论 收藏
分享
评论
1
收藏
分享

创作者周榜

更多
牛客网
牛客网在线编程
牛客网题解
牛客企业服务