Welcome to collectivesolver - Programming & Software Q&A. A website you can trust. All programs tested and works. Contact: aviboots(AT)netvision.net.il
BlueHost Web Hosting

Bonsai Boy of New York Bonsai Trees and Accessories

Liquid Web iThemes WordPress Hosting

Ecommerce Software - Best Ecommerce Platform Made for You - Free Trial

DreamHost Web Hosting


getResponse autofunnels

Liquid Web Cloud VPS Hosting

Disclosure We are a professional Information website that receives compensation from some of the links whose we show you with Information. It means that my content may contain affiliate links.

12,182 questions

16,588 answers

573 users

How to count the total set bits in all numbers from 1 to N in C++

1 Answer

0 votes
#include <iostream>

using namespace std;

unsigned int count_set_bits(unsigned int n) { 
    unsigned int count = 0; 
    while (n) { 
        count += n & 1; 
        n >>= 1; 
    } 
    return count; 
}  

unsigned int count_total_set_bits(unsigned int n) { 
    int setBitCount = 0; 
  
    for (int i = 1; i <= n; i++) 
        setBitCount += count_set_bits(i); 
  
    return setBitCount; 
} 

int main() 
{ 
    int n = 6; 
    /*
        0001
        0010
        0011
        0100
        0101
        0110
    */
    
    cout << count_total_set_bits(n); 
    
    return 0; 
} 




/*
run:

9

*/

 




answered Apr 12, 2019 by avibootz
...