1418 - C语言-阶乘数列
求Sn=1!+2!+3!+4!+5!+…+n!之值,其中n是一个数字。
Input
n
Output
和
Examples
Input
5
Output
153
Solution C
int main(int argc, char* argv[]) { long double sum,i,a,n; while(~scanf("%llf",&n)) { sum=0;a=1; for(i=1;i<=n;i++) { sum+=a*i; a=a*i; } printf("%.0llf\n",sum); } return 0; }
Solution C++
#include<iostream> using namespace std; long long a[1001]; void fun(int n) { int i; a[1]=1; a[2]=2; for(i=3;i<=n;i++) a[i]=a[i-1]*i; } int main() { int i,n; fun(1000); while(cin>>n) { long long x=0; for(i=1;i<=n;i++) x+=a[i]; cout<<x<<endl; } return 0; }