강의

멘토링

로드맵

인프런 커뮤니티 질문&답변

JEE SUN LEE님의 프로필 이미지
JEE SUN LEE

작성한 질문수

자바스크립트 알고리즘 문제풀이 입문(코딩테스트 대비)

5. 최대 매출(Sliding Window)

안녕하세요, 코드리뷰 부탁드립니다. 감사합니다!

작성

·

129

0

function solution(k, arr) {
let answer = 0;
let n = arr.length;
let max = Number.MIN_SAFE_INTEGER;
let sum = 0;

for (let i = 0; i < n; i++) {
sum = arr[i] + arr[i + 1] + arr[i + 2];
if (sum > max) max = sum;
answer = max;
}
return answer;
}

퀴즈

투 포인터 또는 슬라이딩 윈도우 기법이 중첩 반복문보다 효율적인 주된 이유는 무엇일까요?

더 적은 메모리를 사용해서일까요?

코드가 더 짧아져서일까요?

대부분의 경우 O(N) 시간 복잡도를 달성해서일까요?

입력 데이터 크기에 영향을 받지 않아서일까요?

답변 1

1

김태원님의 프로필 이미지
김태원
지식공유자

안녕하세요^^

위에 코드는 k가 3일때의 입력예만 답이 나오는 코드입니다. k값은 3으로 고정되지 않고 4, 5, 6 아무 값이나 다 될 수 있는 변수입니다.

let a=[12151120251020191315];
console.log(solution(5, a));

위에 처럼 해도 답은 56만 나올겁니다.

JEE SUN LEE님의 프로필 이미지
JEE SUN LEE

작성한 질문수

질문하기