blob: a1e03c7076d76dace4d0b78701259b0446976f58 (
plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
|
#include <iostream>
int count_bits(int n){
int set_bits = 0;
for(int i = 1; i <= n; i++){
int x = i;
while(x > 0){
int b = x & 1;
set_bits += b;
x = x >> 1;
}
}
return set_bits;
}
int main(int argc, char** argv){
int set_bits = count_bits(3);
std::cout << set_bits << " % 1000000007 = " << set_bits % 1000000007 << std::endl;
set_bits = count_bits(4);
std::cout << set_bits << " % 1000000007 = " << set_bits % 1000000007 << std::endl;
}
|