PAT L1 013 計算階乘和
阿新 • • 發佈:2019-02-02
題目描述:
對於給定的正整數N,需要你計算 S = 1! + 2! + 3! + ... + N!。
輸入格式:
輸入在一行中給出一個不超過10的正整數N。
輸出格式:
在一行中輸出S的值。
輸入樣例:
3
輸出樣例:
9
這個題如果10變成了更大的數字就不好玩了,不過十以內完全可以開啟計算器寫一下 哈哈哈哈
#include<cstdio>
#include<cstdlib>
#include<cmath>
#include<cstring>
#include<iostream>
#include<algorithm>
#include<queue>
#include<map>
#include<stack>
#include<set>
const int Max=100000;
using namespace std;
typedef long long ll;
int main()
{
ios::sync_with_stdio(false);
ll sum[11];
sum[1]=1;
sum[2]=3;
sum[3]=9;
sum[4]=33;
sum[5]=153;
sum[6]=873;
sum[7]=5040+873;
sum[8 ]=40320+5040+873;
sum[9]=362880+40320+5040+873;
sum[10]=3628800+362880+40320+5040+873;
int n;
cin>>n;
cout<<sum[n]<<endl;
return 0;
}