You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

为何我用Python计算任意阶魔方组合数的公式无法正常运行?

N阶魔方组合数计算代码修复需求

我编写了一段计算N阶魔方组合数的代码,目前仅在N=2或3时能得到正确结果,N取其他值时输出不符合预期。我已经尝试过以下方法排查问题:

  • 用ChatGPT分析代码逻辑
  • 更换不同的阶乘实现函数
  • 将公式拆分成分段计算的形式

但上述尝试均未解决问题,需要让代码能按照预设公式正确完成计算。

代码实现

import math
N = int(input("请输入魔方的阶数:\n"))

def factorial(n):
    return math.factorial(n)

# 组合数计算公式
pt1 = factorial(7)*3**6*(24*2**10*factorial(12))**(N%2)*(factorial(24))**math.floor((N-2)/2)*(factorial(24)/factorial(4)**6)**math.floor(((N-2)/2)**2)

# 输出格式化结果
Ans = int(pt1)
print(f'{Ans:,}')

公式说明

该公式用于计算N阶魔方的总组合数,验证时以N=4为例,对应的计算逻辑为:
7! × 3⁶ × (24×2¹⁰×12!)^(N mod 2) × (24!)^floor((N-2)/2) × (24!/(4!)^6)^floor(((N-2)/2)²)
对比专业计算工具的结果后,确认当前代码输出不符合预期。

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.06.26 05:05:20