#22. 2021-CSP-J-19

单选题 难度:未设置 通过:28 提交:38 通过率:73.68% 上传者: Turing001

题目描述

判断:当输入为 1 511998 时,输出为 18。( )

#include <iostream>
using namespace std;

int n;
int a[1000];

int f(int x)
{
    int ret = 0;
    for (; x; x &= x - 1) ret++;
    return x;
}

int g(int x)
{
    return x & -x;
}

int main()
{
    cin >> n;
    for (int i = 0; i < n; i++) cin >> a[i];
    for (int i = 0; i < n; i++)
        cout << f(a[i]) + g(a[i]) << ' ';
    cout << endl;
    return 0;
}

选项

错误

正确

分类标签