
😎풀이
- 1부터
nums의 길이 까지에 해당하는 2진수 생성
- 해당 2진수 순회
2-1. 각 2진수에서 1의 수 탐색
2-2. 1의 수가 k와 동일한 2진수라면, 현재 인덱스 저장
- 저장된 인덱스에 해당하는
nums 요소의 값 합계 연산
- 합계 반환
function sumIndicesWithKSetBits(nums: number[], k: number): number {
const n = nums.length
const idx = []
const digits = Array.from({ length: n }, (_, i) => i.toString(2))
for(let i = 0; i < n; i++) {
const digit = digits[i]
let countOne = 0
for(const char of digit) {
if(char !== '1') continue
countOne++
}
if(countOne !== k) continue
idx.push(i)
}
const sum = idx.reduce((acc, cur) => acc + nums[cur], 0)
return sum
};