博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
[笔记] 斯特林公式
阅读量:5256 次
发布时间:2019-06-14

本文共 852 字,大约阅读时间需要 2 分钟。

[笔记] 斯特林公式

先看一道题

题目大意:求一个\(N\)的阶乘恰好大于\(x^x\)

用斯特林公式算出位数,然后二分查找,一定注意精度

Detail

\[\displaystyle{\lim\limits_{n \rightarrow \infty}\frac{n!}{\sqrt{2 \pi n}\left(\frac{e}{n}\right)^n}=1}\]

\[\displaystyle{\frac{\lg{2 \pi n}}{2}+n\lg{\frac{e}{n}}}\]

Code

#include 
#include
#include
#include
using namespace std;const double Pi = acos(-1.0);const double e = exp(1.0);typedef long long ll;long long x;int main(){ cin >> x; ll l = 1, r = 100000000000000L, mid;//字面值太大要加个L保险 while(l < r){ mid = l + ((r - l) >> 1); if(double(double(log10(sqrt(2 * Pi * mid))) + double(mid * double(log10(mid / e)))) < x*double(log10(x))) l = mid + 1; else r = mid; } printf("%lld\n", l); return 0;}

转载于:https://www.cnblogs.com/LMSH7/p/9605391.html

你可能感兴趣的文章
多态存在的3个必要条件
查看>>
code First 四
查看>>
Django与Ajax
查看>>
再做一题,2013-6-16更新
查看>>
Oracle_Statspack性能诊断工具
查看>>
面向对象(封装、继承、多态、抽象)
查看>>
Memcached数据库缓存
查看>>
转获取sql维护的表关系
查看>>
网络基础——TCP/IP五层模型
查看>>
HDU-3018 Ant Trip(欧拉回路)
查看>>
CDOJ 1251 谕神的密码 贪心
查看>>
CMYK列印颜色
查看>>
多线程 测试
查看>>
web提前做好测试
查看>>
tp5.1 本地正常, 线上route.php不起作用的问题
查看>>
[笔记] 斯特林公式
查看>>
opencv删除轮廓
查看>>
实战分区表:SQL Server 2k5&2k8系列(三)
查看>>
JS简单的倒计时(代码优化)
查看>>
CSS2.0实现面包屑
查看>>