C++高精度算法:求解1!+2!+3!+…+n!(n<=50)
```cpp #include <iostream> #include <vector> #include <algorithm> using namespace std; // 高精度乘法 vector<int> multiply(vector<int> num, int x) { int carry = 0; for (int i = 0; i < num.size(); i++) { int prod = num[i] * x + carry; num[i] = prod % 10; carry = prod / 10; } while (carry) { num.push_back(carry % 10); carry /= 10; } return num; } // 高精度加法 vector<int> add(vector<int> num1, vector<int> num2) { vector<int> result; int carry = 0; int i = 0, j = 0; while (i < num1.size() || j < num2.size() || carry) { int sum = carry; if (i < num1.size()) sum += num1[i++]; if (j < num2.size()) sum += num2[j++]; result.push_back(sum % 10); carry = sum / 10; } return result; } // 输出高精度数 void print(vector<int> num) { for (int i = num.size() - 1; i >= 0; i--) { cout << num[i]; } cout << endl; } int main() { int n; cin >> n; vector<int> factorial(1, 1); vector<int> sum(1, 0); for (int i = 1; i <= n; i++) { factorial = multiply(factorial, i); sum = add(sum, factorial); } print(sum); return 0; } ``` ######[AI问答 | 439点数解答 | 2025-09-26 19:33:39]
- C++实现图像模糊化处理:含代码、解释与复杂度分析(字节豆包 | 670点数解答 | 2025-11-10 18:55:33)115
- C++实现图像像素灰度值模糊化处理:输入输出全解析(字节豆包 | 655点数解答 | 2025-12-01 14:24:01)91
- Python 实现图像模糊化:输入像素值,输出处理后图像(附代码及详细解释)(字节豆包 | 555点数解答 | 2025-12-09 12:22:26)94
- C++实现累加和超过100时输出当前累加数的个数(字节豆包 | 517点数解答 | 2026-03-27 21:06:59)16
- C 语言代码“陷阱”:`=`与`==`误用及修正示例(字节豆包 | 242点数解答 | 2024-11-05 09:31:52)264
- C++实现星际票务总金额计算及开发建议(字节豆包 | 680点数解答 | 2026-03-19 21:26:58)29
- 星际票务总价计算程序代码实现(字节豆包 | 209点数解答 | 2026-03-29 19:10:14)10
- Python代码揭秘:商品销售量与广告投入的线性回归关系及预测(字节豆包 | 712点数解答 | 2024-11-18 20:44:33)312
- Python 实现线性回归:探究商品销售量与广告投入关系及销量预测(GPT | 443点数解答 | 2024-11-18 20:47:31)305
- 数列筛选:统计并求和大于 x 小于 y 的整数,这些开发要点要留意!(字节豆包 | 281点数解答 | 2025-11-29 20:20:58)136
- "Amazing! Code Rain and a Majestic Dragon on Your Screen"(阿里通义 | 537点数解答 | 2024-08-23 20:17:08)840
- 栈操作规则揭秘:输入正整数,输出最终栈元素!(字节豆包 | 24点数解答 | 2024-10-28 18:51:00)313