N!大数定理

xiaoxiao2021-02-28  77

1218: N!

Time Limit: 1 Sec   Memory Limit: 128 MB Submit: 158   Solved: 24 [ Submit][ Status][ Web Board]

Description

Given an integer N(0 ≤ N ≤ 3000), your task is to calculate N!

Input

One N in one line, process to the end of file.

Output

For each N, output N! in one line.

Sample Input

1 2 3

Sample Output

1 2

6

#include<iostream> #include<cstdio> #include<cstring> using namespace std; int main() { int n; while(scanf("%d",&n)!=EOF) { int a[10000],h=1,jws=0; memset(a,0,sizeof(a)); a[0]=1; for(int i=1;i<=n;i++) { for(int j=0;j<h;j++) { int rex=a[j]*i+jws; jws=rex/10; a[j]=rex; } while(jws) { a[h++]=jws; jws/=10; } } for(int i=h-1;i>=0;i--) { printf("%d",a[i]); } printf("\n"); } return 0; }
转载请注明原文地址: https://www.6miu.com/read-2628115.html

最新回复(0)