時間限制: 1 Sec 内存限制: 128 MB
題目描述
已知正整數n(n<=100),設s=1! 2! 3! ... n!。其中“!”表示階乘,求s。
輸入
n
輸出
s
樣例輸入 Copy
4
樣例輸出 Copy
33
V
V
V
V
V
V
V
V
解答:
#include<bits/stdc .h> using namespace std; short s[10005]; short ans[10005]; void jc(int n) { s[1]=1; int t=1; int x; for(int i=1;i<=n;i ) { x=0; for(int j=1;j<=t;j ) { s[j]=s[j]*i x; x=s[j]/10; s[j]%=10; if(x>0&&j==t) t ; } s[t 1]=x; } } int main(){ int n; cin>>n; int x; for(int j=1;j<=n;j ) { memset(s,0,sizeof(s)); jc(j); for(int i=1;i<=10000;i ) { ans[i] =s[i];//cout<<c[i]<<" "; if(ans[i]>=10) { ans[i 1] ; ans[i]=ans[i]; } } } int t1=10000; while(ans[t1]==0&&t1>1) t1--; for(int i=t1;i>=1;i--) { cout<<ans[i]; } return 0; }
,更多精彩资讯请关注tft每日頭條,我们将持续为您更新最新资讯!