| 12345678910111213141516 | func countBits(num int) []int {	res := make([]int, num+1)	if num == 0 {		return res	}	res[1] = 1	for i, j := 2, 0; i <= num; i++ {		if i&1 == 0 { // If i is even, bits(i) = bits(i/2)			j++			res[i] = res[j]		} else { // If i is odd, bits(i) = bits(i/2) + 1			res[i] = res[j] + 1		}	}	return res}
 |