描述

N!阶乘是一个非常大的数,大家都知道计算公式是N!=N*(N-1)······*2*1.现在你的任务是计算出N!的位数有多少(十进制)?

 
输入
首行输入n,表示有多少组测试数据(n<10)
随后n行每行输入一组测试数据 N( 0 < N < 1000000 )
输出
对于每个数N,输出N!的(十进制)位数。
样例输入
3
1
3
32000
样例输出
1
1
130271

#include <iostream>
#include <cmath>
using namespace std;

int main()
{
int n;
cin>>n;
while(n--)
{
int N;
cin>>N;
double sum=0;

for(int i=1;i<=N;i++)
sum+=log10(i);
cout<<(int)sum+1<<endl;

}
return 0;
}

n!,<=10^m;

两边同时取对数,m=log10(n!),m=位数+1;

最新文章

  1. beego上传文件
  2. sublime和python--path
  3. 【BZOJ-1068】压缩 区间DP
  4. JSP公用COMMON文件
  5. Android 通知栏Notification的整合 全面学习 (一个DEMO让你完全了解它)
  6. CodeForces 686B-Little Robber Girl&#39;s Zoo
  7. (转)Android中的Shape使用总结
  8. android开发之路03
  9. [置顶] 项目进阶 之 持续构建环境搭建(二)Nexus私服器
  10. openwrt默认不开启wifi
  11. UE4 Hello World 创建第一个UE4工程
  12. Apache Kafka简介与安装(二)
  13. 第一周博客之二---OA项目环境搭建及开发包部署
  14. eclipse maven设置
  15. PHP钩子的简单介绍
  16. 虚拟机压力测试延迟高的可能原因及 ILPIP 配置 / 查询脚本
  17. 一些Android的博客,没事翻翻
  18. 用c写一个小的聊天室程序
  19. vue-transition-move
  20. Android程序始终横屏

热门文章

  1. Vue-自定义事件之—— 子组件修改父组件的值
  2. 【Learning】带花树——一般图最大匹配
  3. 9.python异常处理
  4. Spring @AfterReturning 总是返回null
  5. curl post请求总是返回417错误
  6. 分享PHP中的10个实用函数
  7. 关于脱离laravel框架使用Illuminate/Validation验证器
  8. Harris Corner
  9. JAVA NIO之文件通道
  10. 基于keras的BiLstm与CRF实现命名实体标注