N!-201308071627.txt
N!
Time Limit: 10000/5000 MS (Java/Others)??? Memory Limit: 65536/32768 K (Java/Others)
Total Submission(s): 43926??? Accepted Submission(s): 12358
Problem Description
Given an integer N(0 ≤ N ≤ 10000), 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 <stdio.h>
#include <string.h>
#define MAX_LEN 40000
int main()
{
? int n;
? int a[MAX_LEN];
? while(scanf("%d",&n)!=EOF)
? {
? ?? int i,j,sum,c;
? ?? memset(a,0,sizeof(a));
? ?? a[0]=1;
? ?? for(i=2;i<=n;i++)
? ?? {
? ?? ?c=0;
? ?? ?for(j=0;j<MAX_LEN;j++)
? ?? ?{
? ?? ??sum=a[j]*i+c;
? ?? ???? a[j]=sum%10;
? ?? ???? c=sum/10;
? ?? ?}
? ?? }
? ?? for(i=MAX_LEN-1;i>=0;i--)
? ?? if(a[i])
? ?? break;
? ?? //if(n==0)
? ?? //printf("0");
? ?? //else
? ?? //{
? ?? ?for(j=i;j>=0;j--)
? ???? printf("%d",a[j]);
? ?? //}
? ?? printf("\n");
? }
???? return 0;
}
轉(zhuǎn)載于:https://www.cnblogs.com/xiaziteng/p/ndejiecheng.html
總結(jié)
以上是生活随笔為你收集整理的N!-201308071627.txt的全部?jī)?nèi)容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: 后台获取前台runat=server的s
- 下一篇: 【转】 Android 屏幕切换总结