华为OJ:求int型正整数在内存中存储时1的个数
来源:互联网 发布:noi算法优化 编辑:程序博客网 时间:2024/05/24 04:17
求int型正整数在内存中存储时1的个数
输入一个int型的正整数,计算出该int型数据在内存中存储时1的个数。
输入描述:
输入一个整数(int类型)
输出描述:
这个数转换成2进制后,输出1的个数
输入例子:
5
输出例子:
2
解答:#include <iostream>#include <vector>using namespace std;int main(){ int n; vector<int>v; while(cin>>n) { int count = 0; v.clear(); while(n) { v.push_back(n%2); n/=2; } for(vector<int>::iterator it=v.begin();it!=v.end();++it) { if(*it) count++; } cout<<count<<endl; } return 0;}解法二其实这道题的原意是想让编程人员使用位运算,代码如下:#include <iostream>using namespace std;int main(){ int n; while(cin>>n) { int count = 0; while(n) { n = n&(n-1); count++; } cout<<count<<endl; } return 0;}
0 0
- 华为oj之求int型正整数在内存中存储时1的个数
- 华为OJ:求int型正整数在内存中存储时1的个数
- 【华为OJ】求int型正整数在内存中存储时1的个数
- 【华为OJ15】求int型正整数在内存中存储时1的个数
- 华为——求int型正整数在内存中存储时1的个数
- nowcoder华为机试:求int型正整数在内存中存储时1的个数
- 【华为OJ】求int型数据在内存中存储时1的个数
- 【华为OJ】【015-求int型数据在内存中存储时1的个数】
- 【华为OJ】【041-求int型数据在内存中存储时1的个数】
- 华为OJ——求int型数据在内存中存储时1的个数
- 华为OJ 初级:求int型数据在内存中存储时1的个数
- 【华为OJ】求int型数据在内存中存储时1的个数
- 【华为 OJ 】求int型数据在内存中存储时1的个数
- 华为OJ——求int型数据在内存中存储时1的个数
- 华为oj初级 求int型数据在内存中存储时1的个数
- Java - 华为机试训练 - 求int型正整数在内存中存储时1的个数
- 《华为机试在线训练》之求int型正整数在内存中存储时1的个数
- java-----------华为机试----------求int型正整数在内存中存储时1的个数 (水题for java)
- [paper] Attention to Scale
- 最常见的进程调度算法及其实现
- CSDN知道用户名如何关注对方好友博客?
- 远程方法调用(RMI)原理与示例
- 关于GC算法
- 华为OJ:求int型正整数在内存中存储时1的个数
- webservice wsdl解析
- 正斜杠和反斜杠区别
- Servlet2/3
- LINQ查询表达式
- C语言
- 配置DNS(解决IP能通,域名不通)
- zip 版 Tomcat 配置步骤
- directx初第十二卷