有单调性一定可以二分
可以二分的题目不一定有单调性
二分红色区间:
while (l < r)
{
mid = (l + r + 1) / 2;
if (check(mid) l = mid;
else r = mid - 1;
}
return l;
二分绿色区间:
while (l < r)
{
mid = (l + r) / 2;
if (check(mid) r = mid;
else l = mid + 1;
}
return l;