코딩테스트/알고리즘

99클럽 코테 스터디 8일차 TIL + 기능개발

Porits789 2024. 7. 29. 14:52

 

오늘의 학습 키워드: 구현

문제: 기능개발

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

 

프로그래머스

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

programmers.co.kr

 

풀이

구현의 느낌이 강한데 큐를 사용해서 조금 더 편하게 진행했다.

반복적으로 progresses의 값에 speeds값을 더하고 합계가 100이 넘는지 판단, 결괏값을 리스트에 넣어 출력했다.

큐는 deque를 사용해 구현했습니다.

from collections import deque
def solution(progresses, speeds):
    answer = []
    progresses = deque(progresses)
    speeds = deque(speeds)
    
    while progresses:
        for i in range(len(progresses)):
            progresses[i] += speeds[i]
        
        count = 0
        while progresses and progresses[0] >= 100:
            progresses.popleft()
            speeds.popleft()
            count+=1
        if count !=0:
            answer.append(count)
    
    return answer

회고

일정이 갑자기 바빠져서 내용이 아쉬운데 별도 포스팅 준비중이다.

 

내일 학습할 것.

SQL, Python, 독서