Counting Bits is a popular **coding interview** question. Here you will be given an integer, and you have to return an array of length (length of the integer + 1) by counting the number of 1â€™s in the binary representation of the index number of each element of the array. So, if you want to learn how to solve the counting bits problem, this article is for you. In this article, I will take you through how to solve the counting bits problem using Python.

## Counting Bits Problem

In the counting bits problem, you will be given an integer n. To solve this problem, return an array of the length n + 1 where the elements will be the number of 1â€™s present in the binary representation of the index number of each value in the array.

For example, look at the input and output of this problem shown below:

Input: 5

Output: [0, 1, 1, 2, 1, 2]

The output array contains the number of 1â€™s in the binary representation of the index number of each element in the array. Index numbers and their binary representations when the input is 5: [0: 0, 1: 1, 2: 10, 3: 11, 4: 100, 5: 101]

## Counting Bits using Python

I hope you have understood what the problem of counting bits means. Now, below is how to solve this problem using the Python programming language:

def countBits(num): counter = [0] if num >= 1: while len(counter) <= num: counter = counter + [i + 1 for i in counter] return counter[:num+1] else: return 0 print(countBits(5))

Output: [0, 1, 1, 2, 1, 2]

So this is how to solve the counting bits problem using Python. You can find many more practice questions for coding interviews solved and explained using Python **here**.

### Summary

In the counting bits problem, you will be given an integer n. To solve this problem, return an array of the length n + 1 where the elements will be the number of 1â€™s present in the binary representation of the index number of each value in the array. I hope you liked this article on solving the counting bits problem using Python. Feel free to ask valuable questions in the comments section below.