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

sohi0321님의 프로필 이미지
sohi0321

작성한 질문수

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

5. 최대 매출(Sliding Window)

코드 리뷰 부탁드립니다

작성

·

253

0

- 학습 관련 질문을 남겨주세요. 상세히 작성하면 더 좋아요!
- 먼저 유사한 질문이 있었는지 검색해보세요.
- 서로 예의를 지키며 존중하는 문화를 만들어가요.
- 잠깐! 인프런 서비스 운영 관련 문의는 1:1 문의하기를 이용해주세요.

잘 구현한 게 맞는지 궁금합니다.

function solution(day, saleArr) {
    let answer;
    let start = 0;
    let sum = 0;
    let max = Number.MIN_SAFE_INTEGER;

    
    for(let end = 0; end < day; end++) {
        sum += saleArr[end];
    }
    max = sum;

    for(let end = 3; end < saleArr.length; end++) {
        sum = sum + saleArr[end] - saleArr[start++];
        if(sum > max) max = sum;
    }
    answer = max;
    return answer;
}

let day = 3;
let saleArr = [12, 15, 11, 20, 25, 10, 20, 19, 13, 15];
console.log(solution(day, saleArr));

답변 1

0

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

안녕하세요^^

day 는 3으로 고정된 상수가 아니라 변수이므로 3이 아닌 값이 입력될 수 있습니다. 아래와 같이 수정하면 됩니다.

for(let end = day; end < saleArr.length; end++) {
sohi0321님의 프로필 이미지
sohi0321

작성한 질문수

질문하기