#382. 题目6:翻转最低位的1
题目6:翻转最低位的1
题目6:翻转最低位的1
题目描述:
给定一个正整数 n,请将它的二进制表示中最低位的 1 变成 0,其余位保持不变。例如,n = 12(二进制 1100),最低位的 1 在第 3 位(从右往左数,从 0 开始),翻转后变成 1000,即 8。
输入格式:一个正整数 n(1 ≤ n ≤ 10⁹)。
输出格式:一个整数,表示操作后的结果。
示例:
输入:12
输出:8
输入:7
输出:6 // 7 = 111 → 翻转最低位1 → 110 = 6
提示:利用 n & (n - 1) 的特性!
粤公网安备44195502000169号