hdu 1042 N!
2015-07-27 09:22
176 查看
欢迎参加——BestCoder周年纪念赛(高质量题目+多重奖励) |
1042 N!Time Limit: 10000/5000 MS (Java/Others) Memory Limit: 262144/262144 K (Java/Others)Total Submission(s): 65375 Accepted Submission(s): 18705 [align=left]Problem Description[/align] Given an integer N(0 ≤ N ≤ 10000), your task is to calculate N! [align=left]Input[/align] One N in one line, process to the end of file. [align=left]Output[/align] For each N, output N! in one line. [align=left]Sample Input[/align] 1 2 3 [align=left]Sample Output[/align] 1 2 6 |
/*模拟手工乘法运算,相当于高精度乘单精度,虽然方法通俗易懂,但所花时间较长,大约3300MS*/
代码如下
#include<iostream> #include<cstring> #define maxn 50000 using namespace std; int n; int a[maxn]; void fact() { memset(a,0,sizeof(a)); a[0]=1; for(int i=2;i<=n;i++) { int w=0; for(int j=0;j<maxn;j++) { a[j]=a[j]*i+w; w=a[j]/10; a[j]%=10; } } int max=maxn; while(!a[max-1]) max--; for(int i=max-1;i>=0;i--) cout<<a[i]; cout<<endl; } int main() { while(cin>>n) { fact(); } }
相关文章推荐
- HTML5实战之《疯狂人参果》
- 在 Linux 操作系统中使用 Nginx 运行 ASP.NET 4
- iOS-设置-app-位置,点击位置奔溃的原因
- 还是畅通工程
- 谷歌在外贸中的实战解析
- POJ_1915_Knight Moves
- 博弈入门
- List Se 和Map的区别
- POJ 3208-Apocalypse Someday(数位dp)
- HDU 5311 Sequence
- Visual Studio 2010 Express for Windows Phone 永久免费序列号
- VS2008到VS2010转换到 COFF 期间失败
- HDU 1010 Tempter of the Bone(DFS+奇偶剪枝)
- 队列
- hdu 2159 FATE
- 做项目过程一点心得
- Python logging模块详解
- 安卓游戏 收集钱袋(自制)
- 转:栈和队列小知识【STL用法】
- 3、ACE-实用生活口语---讲打电话Talking on the phone