首页 > 编程语言 > 详细

HD-ACM算法专攻系列(5)——N!

时间:2017-10-07 16:54:18      阅读:246      评论:0      收藏:0      [点我收藏+]

题目描述:

技术分享

源码:

#include"iostream"
using namespace std;

int main()
{
	int n, digit, carry, tmp;
	int a[40000];
	while(cin>>n)
	{
		if(n <= 1)
		{
			cout<<1<<endl;
		}
		else
		{
			a[0] = 1;
			digit = 1;
			for(int i = 2; i <= n; i++)
			{
				carry = 0;
				for(int j = 0; j < digit; j++)
				{
					tmp = a[j] * i + carry;
					a[j] = tmp % 10;
					carry = tmp / 10;
				}
				while(carry > 0)
				{
					a[digit] = carry % 10;
					digit++;
					carry /= 10;
				}
				
			}
			for(int j = digit - 1; j >= 0; j--)
			{
					cout<<a[j];
			}
			cout<<endl;
		}
	}
    return 0;
}

  

 

HD-ACM算法专攻系列(5)——N!

原文:http://www.cnblogs.com/forcheng/p/7634862.html

(0)
(0)
   
举报
评论 一句话评论(0
关于我们 - 联系我们 - 留言反馈 - 联系我们:wmxa8@hotmail.com
© 2014 bubuko.com 版权所有
打开技术之扣,分享程序人生!