用 Python 检查数字是否是 2 的幂的程序
假设我们有一个数字 n。我们必须检查 n 是否为 2 的幂。
所以,如果输入类似 n = 2048,那么输出将为 True,因为 2048 是 2^11。
为了解决这个问题,我们将按照以下步骤进行操作:
如果 n 与 0 相同,则
返回 False
当 (n AND (n - 1)) 与 0 相同(否则为 false)时返回 true
示例
让我们看下面的实现以更好地理解
def solve(n): if n == 0: return False return (n & (n - 1)) == 0 n = 2048 print(solve(n))
输入
2048
Learn Python in-depth with real-world projects through our Python certification course. Enroll and become a certified expert to boost your career.
输出
True
广告