酷代码 AI
菜单
服务商
DeepSeek字节豆包讯飞星火
更多选项

Python求解1到n的阶乘之和高效算法

为了提高计算效率,这里直接提供一个实现方案: ## 🔢 程序实现 ```python def factorial_sum(n): total = 0 fact = 1 for i in range(1, n + 1): fact *= i # 计算 i! total += fact # 累加到总和 return total n = int(input("请输入正整数 n:")) print(factorial_sum(n)) ``` ## 📌 关键说明 - **循环中同时计算阶乘和累加**:通过保留上一个阶乘结果 `fact`,乘以下一个数字即可得到下一个阶乘,避免重复计算。 - **时间复杂度**:O(n),仅需一次遍历,比单独计算每个阶乘再求和(O(n²))更高效。 ## 🧪 示例验证 当 n=5 时: 计算过程:1! = 1 → 2! = 2 → 3! = 6 → 4! = 24 → 5! = 120 总和 = 1+2+6+24+120 = 153,代码输出结果为 `153`。 ######[AI问答 | 264点数解答 | 2026-04-24 20:47:29]

相关提问
本站限时免费提问中
实用工具查看更多
Linux在线手册 [开发类]
Jquery在线手册 [开发类]
今日油价 [生活类]
图片互转base64 [开发类]
时间转换器 [开发类]