0.0
2016-07-23 13:59
176 查看
描述 小南刚学了二进制,他想知道一个数的二进制表示中有多少个1,你能帮他写一个程序来完成这个任务吗?
输入第一行输入一个整数N,表示测试数据的组数(1<N<1000)
每组测试数据只有一行,是一个整数M(0=<M<=10000)输出每组测试输出占一行,输出M的二进制表示中1的个数样例输入
样例输出
1的个数
时间限制:3000 ms | 内存限制:65535 KB描述 小南刚学了二进制,他想知道一个数的二进制表示中有多少个1,你能帮他写一个程序来完成这个任务吗?
输入第一行输入一个整数N,表示测试数据的组数(1<N<1000)
每组测试数据只有一行,是一个整数M(0=<M<=10000)输出每组测试输出占一行,输出M的二进制表示中1的个数样例输入
3 4 6 7
样例输出
#include<stdio.h> int Count(int v) { int num = 0; while(v) { v &= (v-1); num++; } return num; } int main() { int i,repeat,v; scanf("%d",&repeat); while(repeat--) { i=1; scanf("%d",&v); printf("%d\n",Count( v)); } return 0; }
相关文章推荐
- VIM终极配置
- 调用http://apistore.baidu.com网站的接口
- JAVA生成并导入导出Excel表格文件
- 函数
- E - E
- excel的导入导出
- nodejs群聊和私聊
- mthl个人笔记-最基础
- mysql主从复制
- Java位运算
- 【POJ 3641】Pseudoprime numbers
- 背包问题的贪心算法
- 多媒体文件格式之ASF
- 欢迎使用CSDN-markdown编辑器
- 当file_get_contents或者simplexml_load_file的时候乱码
- description陷阱
- android studio 相关
- jquery-zclip插件
- [华为编程题] 16进制转换为10进制
- 守护进程