인프런 커뮤니티 질문&답변
저는 이렇게 풀어봤습니다
작성
·
157
0
선생님, 저는 이렇게 풀어봤는데 이것도 정답일까요..?
function solution(m, arr) {
let cnt = 0;
let sum = 0;
let leftIndex = 0;
for (let rightIndex = 0; rightIndex < arr.length; rightIndex++) {
while (sum <= m) {
cnt++;
sum += arr[rightIndex];
}
if (sum > m) {
sum -= arr[leftIndex];
if (sum <= m) {
cnt++;
}
}
}
return cnt;
}
let a = [1, 3, 1, 2, 3];
console.log(solution(5, a));
// 10
퀴즈
45%나 틀려요. 한번 도전해보세요!
투 포인터 또는 슬라이딩 윈도우 기법이 중첩 반복문보다 효율적인 주된 이유는 무엇일까요?
더 적은 메모리를 사용해서일까요?
코드가 더 짧아져서일까요?
대부분의 경우 O(N) 시간 복잡도를 달성해서일까요?
입력 데이터 크기에 영향을 받지 않아서일까요?





