package q201 func rangeBitwiseAnd(left int, right int) int { ret := left & right for i := ret + 1; i < right; { ret &= i if ret == 0 { return 0 } // Find first non-zero bit t := 1 for i|t != i { t <<= 1 } i += t } return ret } var _ = rangeBitwiseAnd