publicintbinarySearch1(){ int l = 区间左端点, r = 区间右端点; while(l<r){ int mid = l + r >> 1; if(check(mid)) r = mid; else l = mid + 1; } return r; } publicintbinarySearch2(){ int l = 区间左端点, r = 区间右端点; while(l<r){ int mid = l + r + 1>> 1; if(check(mid)) r = mid - 1; else l = mid; } return r; }