호지

[프로그래머스] 덧칠하기 문제풀이 JS 본문

알고리즘/프로그래머스

[프로그래머스] 덧칠하기 문제풀이 JS

_hoji

section에 들어있는 빈칸은 n을 초과하지 않는다.

따라서 각 section을 탐색하면서, 칠할 수 있다면 칠하고,

한번 칠할 때는 현재 위치를 포함해서 롤러의 길이인 m만큼 칠하게 되므로

paint는 m-1이 증가하게 된다.

따라서 한번 칠하고, paint 된 위치가 빈칸을 여러개 칠할 수 있기 때문에

if(section[i] > paint]와 같이 이전 paint칠이 현재의 section도 칠했는지 확인할 수 있다.

function solution(n, m, section) {
    let count = 0, paint = 0;
    for(let i=0; i<section.length; i++){
        if(section[i] > paint){
            paint = section[i] + m-1;
            count ++;
        }
    }
    return count;
}

https://school.programmers.co.kr/learn/courses/30/lessons/161989

Comments