題目1513:二進位制中1的個數
用位運算,但是不要用n>>=1;如果n是負數的話,就不會停止,改用flag<<=1即可,當超過1<<32時,flag就為0 了
#include<cstdio>
#include<cstring>
int main()
{
int T;
scanf("%d",&T);
while(T--)
{
int n;
scanf("%d",&n);
int count = 0;
int flag = 1;
while(flag)
{
if(n&flag)
count++;
flag<<=1;
}
printf("%d\n",count);
}
return 0;
}
相關文章
- 二進位制中1的個數
- 位運算(一):二進位制中1的個數
- 位運算--求一個 數二進位制中1的個數
- 【劍指offer】二進位制中1的個數
- 求一個整數的二進位制中1的個數
- 【刷演算法】二進位制中1的個數演算法
- 根據數字二進位制下 1 的數目排序排序
- 劍指 Offer 15. 二進位制中1的個數
- JZ-011-二進位制中 1 的個數
- 【c語言】統計一個數二進位制中的1的個數C語言
- 求二進位制數中1的個數(程式設計之美)程式設計
- 力扣 根據數字二進位制下1的數目排序力扣排序
- 負數的二進位制數問題
- 【劍指offer中等部分4】二進位制中1的個數(java)Java
- offer通過--10二進位制中統計1的個數-2
- 查詢數N二進位制中1的個數(JS版 和 Java版)JSJava
- 二進位制求5個1的格式。。。。
- 力扣1356.根據數字二進位制下1的數目排序力扣排序
- 求一個數的二進位制數中所含1的個數的程式碼實現
- leetcode.1356. 根據數字二進位制下 1 的數目排序LeetCode排序
- leetcode-1356. 根據數字二進位制下 1 的數目排序LeetCode排序
- leetcode1356. 根據數字二進位制下 1 的數目排序LeetCode排序
- 演算法學習記錄九(C++)--->二進位制中1的個數演算法C++
- 數字邏輯練習題-(二進位制/16進位制模擬)
- Count 1 in Binary(二進位制中有多少個1)
- 02_Python學習筆記之統計整數二進位制中1的個數Python筆記
- Oracle中的二進位制、八進位制、十進位制、十六進位制相互轉換函式Oracle函式
- C++輸入十進位制數,輸出對應二進位制數、十六進位制數C++
- 知多一點二進位制中的負數
- 輸出二進位制數
- 某演算法競賽題——把一個二進位制的串轉換為十進位制整數演算法
- 整數轉化成八進位制、十六進位制、二進位制,以及轉回
- 用c語言實現輸入一個十進位制數,計算其轉換為二進位制數後其中包含1的個數C語言
- 一看就懂二進位制、八進位制、十六進位制數轉換十進位制
- JavaScript 二進位制數字轉換為十進位制JavaScript
- 1417 二進位制數的大小
- 【轉帖】Oracle中的二進位制、八進位制、十進位制、十六進位制相互轉換函式Oracle函式
- 用C#實現二進位制的減法(包括二進位制小數)C#