fork download
  1. import numpy as np
  2.  
  3. def simplex_number_numpy_optimized(d, n):
  4. # 初始化动态规划表
  5. dp = np.zeros((d + 1, n + 1), dtype=int)
  6. dp[1, :] = np.arange(n + 1) # 初始化一维简单形数
  7.  
  8. # 递归关系:直接利用 Numpy 数组操作
  9. for dim in range(2, d + 1):
  10. dp[dim, 1:] = np.cumsum(dp[dim - 1, 1:])
  11.  
  12. return dp[d, n]
  13.  
  14. # 示例:计算 5 维的第 4 项
  15. result = simplex_number_numpy_optimized(20, 9)
  16. print(f"5D 第 4 项:{result}")
  17.  
Success #stdin #stdout 0.18s 28452KB
stdin
Standard input is empty
stdout
5D 第 4 项:3108105