1.2 二分专题
(1)整数二分(重点):
1、算法思想:
第一步: 将整个区间按某种性质分成两段,我们的目的是找到满足其中一种性质的临界点;
第二步: 每次取中点,然后根据性质判断,分别减少区间;
第三步: 根据性质所在的位置不同,整数二分有两个模板;
模板一:根据左边红色的性质
int mid = l + r + 1>> 1;
if(check(mid)) l = mid;
else r = mid - 1; //若为r-1,则计算mid时要将1加上,防止l = r-1时发生死循环!!!
模板二:根据右边绿色的性质
int mid = l + r >> 1;
if(check(mid)) r = mid;
else l = mid + 1;
### 第一个板子的 mid 写错了
噢噢 谢谢啦hh