题目大意:

将一个数开阶乘后得到的值,来求这个值的位数

n! = 1*2*3*4...*n

对于求一个数的位数的方法为ans = lg(n!) + 1

那么就可以看作 ans = lg(1) + lg(2) .......+ lg(n) + 1

#include <cstdio>
#include <cmath> const double eps = 1e-; int main()
{
int t;
scanf("%d" , &t);
while(t--){
int n;
scanf("%d" , &n);
double ans = ;
for(int i = ; i<=n ; i++)
ans += log10(i * 1.0);
int p = (int) ans;
int ret = ;
if((p+ - ans) <= eps) ret = p+;
else ret = p;
printf("%d\n" , ret);
}
return ;
}

最新文章

  1. Greenplum安装
  2. 使用GDB调试Go语言
  3. 【Codeforces717G】Underfail Hash + 最大费用最大流
  4. UVA 103 Stacking Boxes --LIS
  5. UltraISO制作U盘启动盘安装Win7/10系统攻略
  6. 【转】Android中View的绘制过程 onMeasure方法简述 附有自定义View例子
  7. My Linux API
  8. beeline连接hive server遭遇MapRedTask (state=08S01,code=1)错误
  9. python google play
  10. Oracle Pl/SQL编程基础
  11. laravel artisan 命令工具
  12. Hibernate 乐观锁(Optimistic Locking)
  13. 遍历ul下的li,点击弹出li的索引
  14. 一个web应用的诞生(7)--结构调整
  15. 树莓派Raspberry中成功安装RobotFramework+Selenium
  16. iOS学习 NSString常用技巧
  17. 学号 20175212童皓桢 《Java程序设计》第8周学习总结
  18. Windows10开机pin界面循环重启解决办法
  19. fastclick的介绍和使用
  20. Kylin简介

热门文章

  1. 短链接及关键字过滤ac自动机设计思路
  2. [C++ STL] set使用详解
  3. daily_journal_3 the game of thrones
  4. HTML DOM getElementById() 方法
  5. PHP 操作数据库乱码 以及调试
  6. 16 继续讲C#中的条件执行。if...else if...else
  7. 简单js图片点击向左滚动
  8. Selenium常用方法及函数
  9. C语言中结构体大小计算
  10. SqlBulkCopy实现大批量数据导入