面试题10二进制中1的个数
来源:互联网 发布:jquery-ui.min.js 编辑:程序博客网 时间:2024/06/02 05:09
地址:http://ac.jobdu.com/problem.php?pid=1513
题目1513:二进制中1的个数
- 题目描述:
输入一个整数,输出该数二进制表示中1的个数。其中负数用补码表示。
- 输入:
输入可能包含多个测试样例。
对于每个输入文件,第一行输入一个整数T,代表测试样例的数量。对于每个测试样例输入为一个整数。
。n保证是int范围内的一个整数。
- 输出:
对应每个测试案例,
输出一个整数,代表输入的那个数中1的个数。
- 样例输入:
345-1
- 样例输出:
1232
数(a-1)& a 获得数a消去了从右到左的第一个1的数a'。
例如:
10 == 1010
1010 - 1 = 1001
1001 & 1010 == 1000
不断重复以上过程,直到a == 0.至此,重复的次数 == a中含有1的个数。
#include <stdio.h>int main(){ int n; while(scanf("%d", &n) != EOF) { int a = 0; while(n --) { scanf("%d", &a); if (a == 0) { printf("0\n"); continue; } int i = 0; do { a = (a - 1) & a; i ++; }while(a != 0); printf("%d\n", i); } } return 0;}/************************************************************** Problem: 1513 Language: C++ Result: Accepted Time:80 ms Memory:1020 kb****************************************************************/
0 0
- 面试题---二进制中1的个数
- 面试题10:二进制中1的个数
- 面试题10:二进制中1的个数
- [剑指offer][面试题10]二进制中1的个数
- 《剑指offer》面试题10二进制中1的个数
- 【剑指offer】面试题10:二进制中1的个数
- 【剑指offer】面试题10:二进制中1的个数
- 剑指offer 面试题10 二进制中1的个数
- 剑指Offer:面试题10 二进制中1的个数
- 面试题10 二进制中1的个数
- 面试题10:二进制中1的个数
- 面试题10-二进制中1的个数
- 面试题10:二进制中1的个数
- 面试题10二进制中1的个数
- 《剑指Offer》面试题10:二进制中1的个数
- 剑指offer-面试题10-二进制中1的个数
- 面试题10 二进制中1的个数
- 面试题10:求二进制中1的个数
- C++中类的大小
- Swift 5
- spark history-server的使用
- Linux入门-近期学习整理
- C语言内存机制详解
- 面试题10二进制中1的个数
- 深入理解Java异常处理机制
- 在Mifare50中,如果第二区的访问控制码为FF087069,则该区块1和块3的访问控制条件是什么?(第二次RFID作业)
- SecureCRT 绝佳配色方案, 保护你的眼睛
- Swift6
- nodejs npm常用命令
- 3、Websphere学习笔记之三安装Websphere篇
- 九度oj-1073-杨辉三角
- ali面试