44分,条件不知错与何处

P2694 接金币

以不变应万变,让你不再惧怕二分答案 ``` int l,r,mid=-1,*upd; while(~(l-r)) mid=(l+r)>>1,upd2=check(mid)?&r:&l,*upd2=mid; ``` l是序列里最后一个0,r是第一个1 (根据情况使用l,r) 可解任意二分答案问题,且不会错
by zqc123 @ 2021-12-11 18:43:15


|