题解:蓝桥云课 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
浙公网安备 33010602011771号