n!.cpp

来自「杭州电子科技大学ACM-OJ系统的部分代码」· C++ 代码 · 共 56 行

CPP
56
字号
#include<iostream>
#include <vector>
using namespace std;

void lfac(vector<long>*a,int n)
{
	long i,sum,sc;
    a->push_back(1);
	vector<long>::iterator it;

	for(i=2;i<=n;i++)
	{
		sc=0;
		for(it=a->begin();it!=a->end();it++)
		{
			sum=(*it)*i+sc;			
			sc=sum/10;
			(*it)=(sum%10);
		}
		while(sc>0)
		{
		   a->push_back(sc%10);
		   sc=sc/10;
		}
	}
}

int main()
{
	int n;
	while(cin>>n)
	{
		vector<long> a;
		int i;
		lfac(&a,n);
		for(i=a.size()-1;i>=0;i--)
		{
			cout<<a[i];
		}
          cout<<endl;
	}
    return 0;

}

/*
#include<iotream>
#include<vector>
using namespace std;

void fun(vector<long>*a,int n)
{
   


*/

⌨️ 快捷键说明

复制代码Ctrl + C
搜索代码Ctrl + F
全屏模式F11
增大字号Ctrl + =
减小字号Ctrl + -
显示快捷键?