剑指Offer之二进制中1的个数
来源:互联网 发布:淘宝上卖的沙发怎么样 编辑:程序博客网 时间:2024/05/24 01:03
- 题目描述:
输入一个整数,输出该数二进制表示中1的个数。其中负数用补码表示。
- 输入:
输入可能包含多个测试样例。
对于每个输入文件,第一行输入一个整数T,代表测试样例的数量。对于每个测试样例输入为一个整数。
。n保证是int范围内的一个整数。
- 输出:
对应每个测试案例,
输出一个整数,代表输入的那个数中1的个数。
- 样例输入:
345-1
- 样例输出:
1232
【解析】:
/********************************** 日期:2013-11-18* 作者:SJF0115* 题号: 题目1513:二进制中1的个数* 来源:http://ac.jobdu.com/problem.php?pid=1513* 结果:AC* 来源:剑指Offer* 总结:**********************************/#include<iostream>#include<stdio.h>#include<string>using namespace std;int NumberOfOne(int n){ int flag = 1; int count = 0; while(flag){ if(flag & n){ count++; } flag = flag << 1; } return count;}int main(){int i,n,num;while(scanf("%d",&n) != EOF){ for(i = 0;i < n;i++){ scanf("%d",&num); printf("%d\n",NumberOfOne(num)); }} return 0;}
另一种方法:
int NumberOfOne(int n){ int count = 0; while(n){ count++; n = (n-1) & n; } return count;}
- 剑指Offer之二进制中1的个数
- 剑指Offer之 - 二进制中1的个数
- 剑指offer系列之十:二进制中1的个数
- 【剑指offer】之二进制中1的个数
- 剑指offer系列之9:二进制中1的个数
- 剑指offer(七)之二进制中1的个数
- 二进制中1的个数[剑指offer]之python实现
- 剑指offer之二进制中1的个数
- 【剑指offer之二进制中1的个数】
- 剑指offer 之 二进制中1的个数
- 剑指offer之二进制中1的个数
- 剑指offer之二进制中1的个数
- 剑指offer之十---二进制中1的个数
- 剑指offer:二进制中1的个数
- 剑指offer:二进制中1的个数
- 【剑指offer】二进制中1的个数
- [剑指Offer]二进制中1的个数
- 【剑指offer】二进制中1的个数
- linux 定时器
- Chrome浏览器调用摄像头拍照
- DICT 和V$PARAMETER_VALID_VALUES
- django unexpected keyword argument 'use_decimal' 问题
- web 字符串处理
- 剑指Offer之二进制中1的个数
- 【Android】菜单功能的实现:使用XML
- swftools将PDF转成swf
- javascript函数原型
- wfp 驱动编译报错 解决方案.
- USACO Chapter1-Getting started Section 1.4
- BackToTop.js 为你的网站添加“回到顶部”按钮
- PLSQL执行sql的几种方法
- Android 实现三种动画与特效经典