프로그래머스/lv.1

(프로그래머스) lv.1 덧칠하기

bingual 2024. 1. 18. 15:30
반응형

 

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

 

프로그래머스

코드 중심의 개발자 채용. 스택 기반의 포지션 매칭. 프로그래머스의 개발자 맞춤형 프로필을 등록하고, 나와 기술 궁합이 잘 맞는 기업들을 매칭 받으세요.

programmers.co.kr

문제풀이

선형 탐색을 하면서 덧칠하지 않은 구역을 만났다면 그 구역에서 부터 m 만큼 덧칠해주면 되기에 굳이 n을 쓸 필요가 없다.

def solution(n, m, section):
    answer = 0
    paint = 0  # 덧칠한 구역의 최대 길이를 저장할 변수 선언
    for i in section:
        # 덧칠 하지 않은 구역에서 부터 m만큼 덧칠한 최대 길이 저장후 카운트
        if paint < i:
            paint = i + m - 1
            answer += 1

    return answer