二分答案

地铁dixiatielu

2019-09-20 20:20:50

Personal

当取左中位数测试时会陷入死循环时,只需换成右中位数就可以了 ```cpp while(l < r) { int mid = (l + r >> 1); if(check(mid)) { .... } else { .... } } ``` 或者 ```cpp while(l < r) { int mid = (l + r + 1 >> 1); if(check(mid)) { .... } else { .... } } ```