문제는 다음과 같습니다.
https://programmers.co.kr/learn/courses/30/lessons/42586
코딩테스트 연습 - 기능개발
프로그래머스 팀에서는 기능 개선 작업을 수행 중입니다. 각 기능은 진도가 100%일 때 서비스에 반영할 수 있습니다. 또, 각 기능의 개발속도는 모두 다르기 때문에 뒤에 있는 기능이 앞에 있는
programmers.co.kr
풀이과정
코드
progresses=[93, 30, 55]
speeds=[1, 30, 5]
a=[]
b=[]
c=[]
#남은 처리 기간을 계산해서 리스트 a에 추가한다.
while progresses:
if (100-progresses[0])%speeds[0]==0:
a.append((100-progresses.pop(0))//speeds.pop(0))
else:
a.append(((100-progresses.pop(0))//speeds.pop(0))+1)
#처리 기간별 배포되는 기능의 수를 계산한다.
while a:
b.append(a.pop(0))
if len(b)==1:
c.append(1)
elif max(b[:-1])<b[-1]:
c.append(1)
else:
c[-1]+=1
c
'Python' 카테고리의 다른 글
다이나믹 프로그래밍 설명 - 이코딩, 파이썬 알고리즘 인터뷰 참고-I am yumida (0) | 2021.12.27 |
---|---|
[프로그래머스] 더 맵게-I am yumida (0) | 2021.12.24 |
[프로그래머스] 124 나라의 숫자-I am yumida (0) | 2021.12.22 |
[프로그래머스] 추석 트래픽-I am yumida (0) | 2021.12.21 |
[프로그래머스] 수식 최대화-I am yumida (0) | 2021.12.16 |