← 返回题库
中级

Integer Factorization

未完成
中级参考 代码结构已给出,请填写 ____ 处
def solve(____):
    n = int(____)
    k = int(____)
    p = int(____)
    def dfs(____):
        if count == k:
            if remaining == ____:
                return factors[:]
            return None
        if remaining <= ____:
            return None
        best = None
        for i in range(____):
            power = i ** p
            if power > remaining:
                continue
            result = dfs(____)
            if result:
                if best is None or sum(____) > sum(____):
                    best = result
        return best
    result = dfs(n, ____, int(n ** (____/p)) + ____, [])
    if result:
        print(f'____' + '____'.join(____))
    else:
        print(____)

示例

输入
solve(169, 5, 2)
期望输出
169 = 6^2 + 6^2 + 6^2 + 6^2 + 5^2
Python 代码 🔒 登录后使用
🔒

登录后即可练习

注册免费账号,在浏览器中直接运行 Python 代码