题解:蓝桥云课 1331 二进制中 1 的个数

【题目来源】

蓝桥云课:1.二进制中 1 的个数 - 蓝桥云课 (lanqiao.cn)

【题目描述】

给定一个整数 \(x\),输出该数二进制表示中1的个数。

例:9的二进制表示为1001,有2位是1,所以函数返回2。

【输入】

输入x (内存空间为32位的整数)。

【输出】

第一行输出x二进制表示中1的个数。

【输入样例】

9

【输出样例】

2

【算法标签】

《蓝桥云课 1331 二进制中1的个数》 #位运算#

【代码详解】

x = int(input())  # 获取输入的整数
ans = 0           # 初始化计数器,用于统计1的个数

# 遍历整数的32位(假设是32位整数)
for i in range(32):
    # 检查第i位是否为1
    if ((x >> i) & 1) == 1:
        ans += 1  # 如果是1,计数器加1

print(ans)  # 输出结果

【运行结果】

9
2
posted @ 2026-03-04 15:12  团爸讲算法  阅读(0)  评论(0)    收藏  举报