如果N!的二进制中末尾是1,那么它就不能整除2,对应的位置是1;

如果N!的二进制中最末尾是0的话,它就可以整除2,所以问题就可以转化为求N!二进制含有多少个质因数2

就像就N!中含有5个数一样,n/5,n/5/5.。。。。

#include <iostream>
using namespace std;
int main() {int n;while(scanf("%d",&n)!=EOF){int ans=0;while(n){ans+=n/5;n/=5;}cout<<ans<<endl;}return 0;
}

所以,这里对应的代码为:n>>1相当于n/2

#include <iostream>
using namespace std;
int main() {int n;while(scanf("%d",&n)!=EOF){int ans=0;while(n){n>>=1;ans+=n;}cout<<ans+1<<endl;}return 0;
}

求N!二进制中末尾1的位置(类似于求N!中有多少个5的问题)相关推荐

  1. 对一个正整数n,求出n!中末尾0的个数。

    对一个正整数n,求出n!中末尾0的个数. 输入 输入有若干行.每一行上有一个整数T,是测试数据组数,接着有T行,每一行包含一个确定的正整数n(n≤1000000000). 输出 对输入行中的每一个数据 ...

  2. 程序员面试100题之八:不要被阶乘吓倒(二进制表示中最低位1的位置 )

    阶乘(Factorial)是个很有意思的函数,但是不少人都比较怕它,我们来看看两个与阶乘相关的问题: 1. 给定一个整数N,那么N的阶乘N!末尾有多少个0呢?例如:N=10,N!=3 628 800, ...

  3. 编程之美2——N!的二进制表示中最低位1的位置

    任何数在计算机内部都是用二进制表示的,可以用这个特性来快速判断N!的二进制表示中最低位1的位置. 解法一: 将一个数的二进制数除以2,若二进制数的末尾是0,则能整除,否则不能整除. 因此,求 N!的二 ...

  4. java n%9==0_用C++实现求N!中末尾0的个数的方法详解

    题目描述: 输入一个正整数n,求n!(即阶乘)末尾有多少个0? 比如: n = 10; n! = 3628800,所以答案为2 输入描述: 输入为1行,n(1≤n≤1000) 输出描述: 输出一个整数 ...

  5. 求n!中末尾零的个数

    分析:求n!中末尾零的个数,2和5会出来零,求末尾0的个数,就是求2和5同时出现的次数,要统计2和5出现的次数,易知有,5一定有2,有2不一定有5,所以问题就变成了求n中5出现的次数. #includ ...

  6. 求一维数组中的最大数c语言,C语言 求一维数组中最大值的位置

    C语言 求一维数组中最大值的位置0 stdlib;=10;;The location is%d"i++) { if(a[i]> return 0#include <:> i ...

  7. 如何求指定数字在数组中第一次出现的位置

    问题描述: 给定数组 a = { 3,4,5,6,5,6,7,8,9,8}, 这个数组相邻元素之差都为1, 给定数字9, 它在数组中第一次出现的位置下标为8 实现思路: 方法一:"蛮力&qu ...

  8. 计算 n! 中末尾0的个数 求n!中p的重数

    题意: 输入正整数n,计算 n! 中末尾0的个数 输入:输入一个正整数n (1≤n≤1 000 000 000) 输出:输出 n! 末尾0的个数 样例输入:3 100 1024 样例输出:0 24 2 ...

  9. 位运算的应用和分治法在二进制中的应用

    位运算应用口诀 清零取数要用与,某位置一可用或 若要取反和交换,轻轻松松用异或 移位运算 要点 1 它们都是双目运算符,两个运算分量都是整形,结果也是整形.      2 "<< ...

  10. Oracle 11g 中告警日志的位置

    Oracle 11g 中告警日志的位置 首先介绍2个新名词 Automatic Diagnostic Repository (ADR)一个存放数据库诊断日志.跟踪文件的目录,称作ADR base,对应 ...

最新文章

  1. PS多形式的部分之间复制“笨办法”
  2. 【正则表达式】值匹配汉字的正字表达式
  3. 基于UDP协议的socket套接字编程 基于socketserver实现并发的socket编程
  4. 当今 计算机已进入千家万户英语,学生英语教学论文,关于信息技术在大学英语教学中的应用探析相关参考文献资料-免费论文范文...
  5. 程序员的职业素养文摘
  6. EXT扩展实例:在EXT4中检测Iframe的加载事件,并给它加上MASK
  7. alert中文信息时乱码,html页面和script标签中均已设置为utf-8依然乱码
  8. 20155332 如何获取新技能+c语言学习调查
  9. [cocos2dx]斗地主随机发牌界面生成
  10. 做SEO优化第三步:学习了解HTML基础知识
  11. 算法入门基础知识总结
  12. gnu nano显卡测试软件,买不到了 篇四:站内首发——RX VEGA NANO评测
  13. python怎么打开h5文件_h5文件python
  14. Axure交互式设计
  15. OpenCV-图像高光调整
  16. 1、Android概述
  17. Thread Handler
  18. 牛津花卉数据集(Oxford 17/Oxford 102)官网
  19. AtCoder2362 - Splatter Painting - DFS+思维
  20. Linux C++ 服务器端这条线怎么走?一年半能做出什么?

热门文章

  1. Linux 执行 Shell脚本报错,“syntax error: unexpected end of file” 原因及处理
  2. java基础回顾---static关键字
  3. php 上标,PHP数组上标类型陷阱
  4. tc自动服务器,使用linux下的TC进行服务器流量控制
  5. 求栈中元素个数算法_嵌入式必知基础算法(一)
  6. db2 reorg(转)
  7. Maven入门指南12:将项目发布到私服
  8. AFNetwork 作用和使用方法具体解释
  9. iOS 网络与多线程--3.异步Get方式的网络请求(非阻塞)
  10. freemarker 如何获得list的索引值