洛谷1009题
洛谷题:高精度计算阶乘之和S=1!+2!+…+n!
本题使用高精度加法和高精度乘法相结合方式,结合acwing中高精度加法和高精度乘法提供的模板。
#include
#include
using namespace std;
//更新每次阶乘的值
vector mul(vector &A,int n){vector C;int t=0;for(int i=0;i1&&C.back()==0) C.pop_back();return C;
}
//将每次阶乘的值与之前的和相加
vector add(vector &A,vector &B){vector C;int t=0;for(int i=0;i A,B;cin >> n >> b;if(n>1){A.push_back(1);B.push_back(1);}for(int i=2;i<=n;i++){A=mul(A,i);if(A.size()>=B.size()) B=add(A,B);else B=add(B,A);}for(int j=B.size()-1;j>=0;j--)cout << B[j];return 0;
}
题目链接
本文来自互联网用户投稿,文章观点仅代表作者本人,不代表本站立场,不承担相关法律责任。如若转载,请注明出处。 如若内容造成侵权/违法违规/事实不符,请点击【内容举报】进行投诉反馈!
