检查给定数字是否为d的幂,其中d是Python中的2的幂
假设我们有一个数字n和另一个值x,我们必须检查它是否是x的幂,其中x是2的幂。
因此,如果输入类似于n=32768x=32,则输出将为True,因为n为x^3。
示例
让我们看下面的实现以更好地理解-
def find_pow_of_2(n):
return (1 + find_pow_of_2(n / 2)) if (n > 1) else 0
def solve(n, c):
cnt = 0
if n and (n & (n - 1)) == 0:
while n > 1:
n >>= 1
cnt += 1
return cnt % (find_pow_of_2(c)) == 0
return False
n = 32768
x = 32
print(solve(n, x))输入值
32768, 32输出结果
True
热门推荐
10 八一幼儿祝福语大全简短
11 公司乔迁食堂祝福语简短
12 婚礼结束聚餐祝福语简短
13 儿媳买车妈妈祝福语简短
14 毕业送礼老师祝福语简短
15 同事辞职正常祝福语简短
16 恭贺新婚文案祝福语简短
17 金店立秋祝福语简短英文
18 婆婆高寿祝福语大全简短