문제
N개의 수로 이루어진 수열이 주어진다.
이 수열에서 연속부분수열의 합이 특정숫자 M이하가 되는 경우가 몇 번 있는지 출력
풀이 과정
const solutionA = (numberArray, M) => {
let sum = 0;
let count = 0;
let pointer1 = 0;
for (let pointer2 = 0; pointer2 < numberArray.length; pointer2++) {
if (numberArray[pointer2] <= M) count++;
sum += numberArray[pointer2];
if (sum == M) count++;
while (sum >= M) {
sum -= numberArray[pointer1++];
if (sum <= M) count++;
}
}
return count;
};
const testA = solutionA([1, 3, 1, 2, 3], 5);
console.log(testA);
틀린 부분이 있거나 보충해야 할 내용이 있다면 댓글이나 DM(sungstonemin)으로 알려주시면 감사하겠습니다😄