您的位置:首页 > 其它

51Nod关于n的阶乘的长度(斯特林公式近似计算阶乘)

2016-03-11 15:15 351 查看
求n!的十进制形式有多少位?

实际上可以转换成求log10(n!) + 1;

n!的求法用斯特林近似公式

百度百科:http://baike.baidu.com/link?url=rSye7gOHpT3O_PPrTBtxlRsImQjgkI1e0sydj5YeIA6c6m9mBt4Df5bm68RauSr_p77k40JHBH4AucLTcLnzyq

代码如下:

#include<iostream>
#include<cmath>

const double PI  = 3.141592654;
const double E = 2.718281828459;
using namespace std;
int main()
{
long long n, t, res;
cin >> t;
while (t--)
{

cin >> n;
res =(log10(2 * PI *n)) / 2 + n * log10(n / E) + 1;
cout << res << endl;
}
return 0;
}
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签:  博客 数论 ACM