用 Python 编写程序检查数字是否为 3 的幂之和
pythonserver side programmingprogramming更新于 2025/12/2 6:04:17
假设我们有一个数字 n,我们必须检查是否可以将 n 表示为不同的 3 的幂之和。如果存在整数 x 使得 y = 3^x,则称整数 y 为 3 的幂。
因此,如果输入为 n = 117,则输出将为 True,因为 117 = 3^4 + 3^3 + 3^2 + = 81 + 27 + 9。
为了解决这个问题,我们将遵循以下步骤 −
对于范围从 16 到 0 的 i,减少 1,执行
如果 n >= 3^i ,则
n := n - 3^i
如果 n > 0,则
返回 False
返回 True
示例
让我们看看下面的实现以便更好地理解 −
def solve(n):
for i in range(16, -1, -1):
if n >= pow(3,i):
n -= pow(3,i)
if n > 0:
return False
return True
n = 117
print(solve(n))
输入
117
输出
True
相关文章
有用资源
python 参考教程 - 该教程包含有关 python 的更多信息:https://www.cainiaomax.com/python/

