func findComplement(num int) (res int) { if num == 0 { return 1 } mask := 0 for i := num; i != 0; i >>= 1 { mask = (mask << 1) | 1 } return mask ^ num }