← 返回题库
初级

Consecutive Factors

未完成
初级参考 完整示例代码供参考,建议自己理解后重新输入
def solve(n):
    n = int(n)
    best_start, best_len = n, 1
    for i in range(2, int(n**0.5) + 2):
        prod = 1
        j = i
        while True:
            prod *= j
            if prod > n or n % prod != 0:
                break
            length = j - i + 1
            if length > best_len:
                best_len = length
                best_start = i
            j += 1
    print(best_len)
    print(" ".join(str(best_start + k) for k in range(best_len)))

示例

输入
630
期望输出
3
5 6 7
Python 代码 🔒 登录后使用
🔒

登录后即可练习

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