[파이썬/Python/프로그래머스] 스택/큐 > 기능개발

SooYeon Yeon·2022년 5월 6일
0

파이썬/알고리즘

목록 보기
11/35
def solution(progresses, speeds):
    answer=[]

    while progresses:
        for i in range(len(progresses)):
            progresses[i] += speeds[i]
        cnt = 0
        while progresses and progresses[0] >= 100:
            progresses.pop(0)
            speeds.pop(0)
            cnt+=1
        if cnt>0:
            answer.append(cnt)
    return answer

progresses 리스트가 있으면 계속 반복한다.

progress의 길이만큼 i 를 돌려 progresses[i]에 speeds[i]를 더한다.

cnt를 두고,

progress가 존재하고, progresses[0] 즉 가장 앞이 100을 넘어서면 progresses와 speeds 배열의 첫번째를 pop해주고 cnt를 1씩 증가한다.

cnt가 0보다 크면 answer에 cnt를 삽입하고 반복한다.

이번에도 잘 안풀려 다른사람 코드를 참고하여 해결했다.

아직 갈길이 멀고 먼 것 같다. 다른사람 코드를 보지않도록 노력해봐야겠다.

0개의 댓글