본문 바로가기
가이드/프로그래머스

프로그래머스 > 스택/큐 > 기능개발 / Python3

by 루엔_vivid 2022. 3. 17.

문제 설명

문제 풀이

def solution(progresses, speeds):
    answer = []
    days = []

    for i in range(0, progresses.__len__()):
        days.append((100 - progresses[i]) // speeds[i]) # 남은 작업일 나누기 속도
        if (100 - progresses[i]) % speeds[i] > 0: # 나머지가 없으면 1일 추가
            days[i] += 1

    maxDay = 0
    count = 0

    for i in days:
        if i > maxDay: # 앞에 일이 더 먼저 끝나는지 확인
            if count != 0: # 최초는 치면 안되므로
                answer.append(count)
            maxDay = i
            count = 1
        else:
            count += 1

    answer.append(count) # 마지막 일 처리

    return answer
반응형

댓글