题解 | #牛群的编码统计#
牛群的编码统计
https://www.nowcoder.com/practice/89500cbfd12a4c9f893aafb3c308baa2
考察的知识点:位运算;
解答方法分析:
- 将整数 n 转换为长度为 32 的二进制字符串 s。
- 初始化变量 count 为 0,用于记录'0'的个数。
- 进入循环,遍历字符串 s 的每一位,从索引 0 到索引 s.length() - 1。
- 在循环中,判断当前位是否为'0',即判断 s[i] 是否等于字符 '0'。如果是,则将 count 加 1。
- 循环结束后,返回 count,即'0'的个数。
所用编程语言:C++;
完整编程代码:↓
class Solution { public: /** * 代码中的类名、方法名、参数名已经指定,请勿修改,直接返回方法规定的值即可 * * * @param n int整型 * @return int整型 */ int countZeros(int n) { string s = bitset<32>(n).to_string(); int count = 0; for (int i = 0; i < s.length(); i++) { if (s[i] == '0') { count++; } } return count; } };