Python 코딩테스트
[프로그래머스] 기능개발 파이썬
bgeun2
2022. 10. 11. 21:49
반응형
문제:
https://school.programmers.co.kr/learn/courses/30/lessons/42586
프로그래머스
코드 중심의 개발자 채용. 스택 기반의 포지션 매칭. 프로그래머스의 개발자 맞춤형 프로필을 등록하고, 나와 기술 궁합이 잘 맞는 기업들을 매칭 받으세요.
programmers.co.kr
풀이:
처음에 문제 이해가 좀 어려웠다.
1. progresses, speeds를 큐로 가정한다.
2. 모든 기능이 배포될 때까지, 즉 progresses가 빌 때까지 다음을 반복한다.
- progresses 길이만큼 순회하여 각 기능의 진행 상황을 더 해준다.
- 완성된 기능들이 있으면 배포한다.
- 그날 배포된 개수가 0보다 크면 answer에 넣는다.
3. 특정 날짜에 배포 개수들이 저장된 answer를 반환한다.
정답:
import math
def solution(progresses, speeds):
answer = []
arr = []
start = 0
for p,s in zip(progresses, speeds):
arr.append(math.ceil((100 - p) / s))
print(arr)
for i in range(1, len(arr)):
if arr[i] > arr[start]:
answer.append(i - start)
start = i
answer.append(len(arr) - start)
return answer
반응형