function solution(m, arr) {
let answer = 0,
l = 0,
sum = 0;
for (let r = 0; r < arr.length; r++) {
sum += arr[r];
if (sum === m) answer++;
while (sum >= m) {
sum -= arr[l++];
if (sum === m) answer++;
}
}
return answer;
}
이게 선생님 올려주신 코드이구요,
for (let r = 0; r < arr.length; r++) {
sum += arr[r];
while (sum >= m) {
if (sum === m) answer++;
sum -= arr[l++];
}
}
for문 안을 이렇게 수정해도 코드가 잘 동작하더라구요
굳이 while문 위에 sum === m 코드를 하나 더 중복해서 빼 주어야하는 이유가 있을까요?