Untitled

Binary Search

int bsearch_1(int l, int r) {
    while (l < r) {
        int mid = (l + r) / 2;
        if (check(mid)) r = mid;
        else l = mid + 1;
    }
    return l;
}

int bsearch_2(int l, int r) {
    while (l < r) {
        int mid = (l + r + 1) / 2;
        if (check(mid)) l = mid;
        else r = mid - 1;
    }
    return l;
}

liweiwei大佬整理的二分题目,是评论区一位hxd分享给我的。比较长,但是有详细分析!!适合细看