求
a b s ( a r r [ l ] & a r r [ l + 1 ] ⋯ & a r r [ r ] − t a r g e t ) abs( arr[l] \& arr[l+1] \cdots \&arr[r] - target) abs(arr[l]&arr[l+1]⋯&arr[r]−target)
最小值
先贴一个思路很棒的优化,充分利用单调不增的性质
记AND(l,r)
表示 a r r [ l ] & a r r [ l + 1 ] ⋯ & a r r [ r ] arr[l] \& arr[l+1] \cdots \& arr[r] arr[l]&arr[l+1]⋯&arr[r],根据&运算规则我们知道 a < a&b,因此可推得
A N D ( l , r ) ≥ A N D ( l , r