51nod-1130-N的阶乘的长度V2(斯特林近似)-套斯特林公式
输入
第1行:一个数T,表示后面用作输入测试的数的数量。(1 <= T <= 1000)
第2 - T + 1行:每行1个数N。(1 <= N <= 10^9)
输出
共T行,输出对应的阶乘的长度。
输入样例
3
4
5
6
输出样例
2
3
3 对于n来说,要是求阶乘的话数据范围需要达到10^9以上才可以使用斯特林公式,否则会精度损失,造成误差比较大。
但是要是求的是n的阶乘的长度的话,可以利用公式((log10(2*PI*n))/2+n*(log10(n/e))+1),但是直接让计算机去求对数即lgN!+1这个好像是不对的,我用了
(ll)((log10(sqrt(2*PI*n*1.00))*pow(n/e,n))+1))运行都是错的,所以求长度还是用第一个,自己求好对数再让计算机去运行吧
#include<stdio.h>
#include<string.h>
#include<cmath>
using namespace std;
const double PI=3.1415926535898;
const double e=2.718281828459;
typedef long long ll; int main()
{
int tt,n;
scanf("%d",&tt);
while(tt--)
{
scanf("%d",&n);
printf("%lld\n",(ll)((log10(2*PI*n))/2+n*(log10(n/e))+1));//注意是long long,int的话会WA
}
return ;
}
51nod-1130-N的阶乘的长度V2(斯特林近似)-套斯特林公式的更多相关文章
- 51nod 1130 N的阶乘的长度 V2(斯特林近似)
输入N求N的阶乘的10进制表示的长度.例如6! = 720,长度为3. Input 第1行:一个数T,表示后面用作输入测试的数的数量.(1 <= T <= 1000) 第2 - T + ...
- 1130 N的阶乘的长度 V2(斯特林近似)
1130 N的阶乘的长度 V2(斯特林近似) 基准时间限制:1 秒 空间限制:131072 KB 分值: 0 难度:基础题 收藏 关注 输入N求N的阶乘的10进制表示的长度.例如6! = 720, ...
- 51nod 1130 N的阶乘的长度(斯特林近似)
输入N求N的阶乘的10进制表示的长度.例如6! = 720,长度为3. Input 第1行:一个数T,表示后面用作输入测试的数的数量.(1 <= T <= 1000) 第2 - T + ...
- 【51NOD-0】1130 N的阶乘的长度 V2(斯特林近似)
[算法]数学 [题解]斯特林公式: #include<cstdio> #include<algorithm> #include<cmath> using names ...
- 51Nod 1058 N的阶乘的长度
输入N求N的阶乘的10进制表示的长度.例如6! = 720,长度为3. Input 输入N(1 <= N <= 10^6) Output 输出N的阶乘的长度 Input示例 6 Out ...
- 51nod 1058 N的阶乘的长度 位数公式
1058 N的阶乘的长度基准时间限制:1 秒 空间限制:131072 KB 分值: 0 难度:基础题 收藏 关注输入N求N的阶乘的10进制表示的长度.例如6! = 720,长度为3.Input输入N( ...
- (斯特林公式)51NOD 1058 N的阶乘的长度
输入N求N的阶乘的10进制表示的长度.例如6! = 720,长度为3. Input 输入N(1 <= N <= 10^6) Output 输出N的阶乘的长度 Input示例 6 Out ...
- N的阶乘的长度 V2(斯特林近似) 求 某个大数的阶乘的位数 .
求某个大数的阶乘的位数 . 得到的值 需要 +1 得到真正的位数 斯特林公式在理论和应用上都具有重要的价值,对于概率论的发展也有着重大的意义.在数学分析中,大多都是利用Г函数.级数和含参变量的积分等 ...
- 51Nod 1058: N的阶乘的长度(斯特林公式)
1058 N的阶乘的长度 基准时间限制:1 秒 空间限制:131072 KB 分值: 0 难度:基础题 收藏 关注 输入N求N的阶乘的10进制表示的长度.例如6! = 720,长度为3. Inp ...
随机推荐
- xpath总结
Python包 pip install lxml 在 XPath 中,有七种类型的节点:元素.属性.文本.命名空间.处理指令.注释以及文档(根)节点.XML 文档是被作为节点树来对待的. xpath语 ...
- nodejs的npm修改源
在国内用npm install时,速度总是不尽如人意,解决办法是修改npm的数据源 npm config set registry https://registry.npm.taobao.org 修改 ...
- 转: 工作中用的C++库
转:https://www.mhftz.com/archives/42.html 个人学习C/C++的开源代码: 0.STL 1.osmium 2.leveldb 3.glog 4.redis 个人使 ...
- sed 一 文本处理工具
简介 sed 采用的是流编辑模式: 最明显的特点是,在 sed 处理数据之前,需要预先提供一组规则,sed 会按照此规则来编辑数据. sed 会根据脚本命令来处理文本文件中的数据,这些命令要么从命令行 ...
- Android中的Parcel机制(上)
一.先从Serialize说起 我们都知道JAVA中的Serialize机制,译成串行化.序列化--,其作用是能将数据对象存入字节流当中,在需要时重新生成对象.主要应用是利用外部存储设备保存对象状态, ...
- 59 cuda 不同版本__half冲突问题 —— "__half" has no member "x"
0 引言 深度学习中常常用到half类型的半精度浮点数,但是cpu本身是不支持half的,因此需要进行转换. 1 half - float转换 参考了某博主的github,链接如下. https:// ...
- NX二次开发-UFUN结合NXOPEN开发_常用代码模板
hpp //头文件 #include <NXOpen/Part.hxx> #include <NXOpen/PartCollection.hxx> #include <N ...
- Python爬虫-《神雕侠侣》
Python3.5 爬取<神雕侠侣>http://www.kanunu8.com/wuxia/201102/1610.html 武侠迷,所以喜欢爬取武侠小说 #!/usr/bin/pyth ...
- SPSS单一样本的T检验
SPSS单一样本的T检验 如果已知总体均数,进行样本均数与总体均数之间的差异显著性检验属于单一样本的T检验.在SPSS中,单一样本的T检验由"One-Sample T Test"过 ...
- Springboot整合dubbo搭建基本的消费、提供和负载均衡
文章目录 1.确定接口 2.创建提供者 2.1 pom配置 2.2dubbo配置文件 2.3 application.properties 2.4 mybatis相关 2.4.1 配置UserMapp ...