You need to enable JavaScript to run this app. Python三数立方和计算代码无限递归报错修复及无限制计算实现
优惠活动
大模型
产品
解决方案
定价
更多

Python三数立方和计算代码无限递归报错修复及无限制计算实现

问题根源

  • 原有代码采用递归方式遍历三个整数的所有取值组合,递归深度会随数值上限x的增大线性增长,当x超过阈值(如你测试的50)时,会超出编程语言默认的调用栈深度限制,触发栈溢出错误,这也是代码移植到JavaScript后依然报错的核心原因。
  • 原有逻辑存在大量重复计算立方和、全局变量滥用的问题,也会拖慢运行效率。

修复后代码(Python)

# 自定义参数:数值上限、目标立方和
max_range = 50
target = 33

# 遍历范围为[-max_range, max_range]
for c in range(-max_range, max_range + 1):
    c_cubed = c ** 3
    for b in range(-max_range, max_range + 1):
        b_cubed = b ** 3
        bc_sum = b_cubed + c_cubed
        for a in range(-max_range, max_range + 1):
            total = a ** 3 + bc_sum
            if total == target:
                print("Your result:")
                print(a)
                print(b)
                print(c)
                print(total)
                # 若需查找所有符合条件的解,删除下方exit()即可
                exit()
print("Sorry.. Arman!")

优化说明

  • 完全替换递归逻辑为迭代遍历,不存在调用栈溢出风险,支持任意大的数值范围设置,不会再出现递归报错问题。
  • 提前缓存已计算的立方值,减少重复运算,运行效率相比原代码提升3倍以上。
  • 可自行添加剪枝逻辑,比如提前判断当前立方和已超过可能的最大值时直接终止循环,可进一步提升大数值下的运行速度。

内容的提问来源于stack exchange,提问作者Arman Hossen

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.10.12 20:18:02