社区讨论

本题 二分法 要点注意

P8647 [蓝桥杯 2017 省 AB] 分巧克力参与者 4已保存回复 8

讨论操作

快速查看讨论及其快照的属性,并进行相关操作。

当前回复
8 条
当前快照
1 份
快照标识符
@m3cbcom9
此快照首次捕获于
2024/11/11 08:56
去年
此快照最后确认于
2025/11/04 14:55
4 个月前
查看原帖
本题直接套二分法的模板很可能出问题。个人得到的一个可行的写法是 (此处仅展示关健的区间控制)
mid=(l+r+1)/2
结果大于等于K:l=mid
结果小于K:r=mid-1
此处不能写l=mid+1,因为mid可能为最终结果 需要保留。
而r就无所谓了,通过-1防止死循环
此处也不能写mid=(l+r)/2,会死循环。举个例子:
l=1,r=2
mid=1
结果大于等于K:l=1
这就死循环了,但如果是mid=(l+r+1)/2,mid会更偏向r
此时mid=2
结果大于等于K:l=2
结果大于等于K:r=1
这样两种情况都能通过,并且保留了大于等于K的mid

回复

8 条回复,欢迎继续交流。

正在加载回复...