프로그래머스 - 연속 부분 수열 합의 개수 Lv.2
function solution(elements) {
const sumSet = new Set();
const length = elements.length;
for (let subLength = 1; subLength <= length; subLength++) {
let currentSum = 0;
for (let start = 0; start < length; start++) {
if (start === 0) {
for (let index = 0; index < subLength; index++) {
currentSum += elements[index];
}
} else {
currentSum -= elements[start - 1];
currentSum += elements[(start + subLength - 1) % length];
}
sumSet.add(currentSum);
}
}
return sumSet.size;
}
console.log(solution([7, 9, 1, 1, 4])); //