hdu 1042 N!

来源:互联网 发布:php 地方门户系统 编辑:程序博客网 时间:2024/04/29 23:47
 

N!

Time Limit: 10000/5000 MS (Java/Others)    Memory Limit: 65536/32768 K (Java/Others)
Total Submission(s): 33314    Accepted Submission(s): 9234


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
Author
JGShining(极光炫影) 
1468MS452K

View Code

Problem : 1042 ( N! )     Judge Status : Accepted
RunId : 6306010    Language : C++    Author : NealGavin
Code Render Status : Rendered By HDOJ C++ Code Render Version 0.01 Beta
#include<cstdio>#include<iostream>#include<cstring>#include<algorithm>#define N 60300#define mod 10using namespace std;int shu[N];void quick_min(int m){  shu[0]=1;  shu[1]=1;  int d=0;  for(int i=2;i<=m;i++)  {    for(int j=1;j<=shu[0];j++)    {      d=shu[j]*i+d;      shu[j]=d%mod;      d/=mod;    }    while(d)    {      shu[++shu[0]]=d%mod;      d/=mod;    }  }}int main(){  int m;  while(cin>>m)  {    quick_min(m);    for(int j=shu[0];j>0;j--)    cout<<shu[j];    cout<<"\n";  }}

296MS344K

View Code

Problem : 1042 ( N! )     Judge Status : Accepted
RunId : 6306105    Language : C++    Author : NealGavin
Code Render Status : Rendered By HDOJ C++ Code Render Version 0.01 Beta
#include<cstdio>#include<iostream>#include<cstring>#include<algorithm>#define N 60300#define mod 100000using namespace std;int shu[N];void quick_min(int m){  shu[0]=1;  shu[1]=1;  int d=0;  for(int i=2;i<=m;i++)  {    for(int j=1;j<=shu[0];j++)    {      d=shu[j]*i+d;      shu[j]=d%mod;      d/=mod;    }    while(d)    {      shu[++shu[0]]=d%mod;      d/=mod;    }  }}int main(){  int m;  while(cin>>m)  {    quick_min(m);    printf("%d",shu[shu[0]]);    for(int j=shu[0]-1;j>0;j--)    printf("%05d",shu[j]);    cout<<"\n";  }}