二分答案到底有几种写法

灌水区

Melo.VVちゃん @ 2024-07-06 10:58:02

rt,bdfs 无果。

哪种最靠谱,因为这个破二分时不时就会挂


by Mortal_Fate @ 2024-07-06 11:10:21

int bin(){
    int l = 1, r = n, mid, res = 0;
    while(l <= r){
        mid = l + r >> 1;
        if(check(mid)) l = mid + 1, res = mid;
        else r = mid - 1;
    }
    return res;
}

by lovely_hyzhuo @ 2024-07-06 11:42:45

@shin_chan_jiang XATYZ喜欢写倍增式的,虽然我也是TYZ的,但是我喜欢写平常

平常的如楼上所写,倍增式如下。

int now=0;
for(int i=1<<31;i;i=i>>1)
    if(check(now+i))
        now+=i;
cout<<now+1;

|