programmers.co.kr/learn/courses/30/lessons/42586?language=python3
import math
def solution(progresses, speeds):
# d (dev) : 7, 3, 9
# Q (deploy, cnt) : [[7, 2], [9, 1]]
Q = []
for p, s in zip(progresses, speeds):
d = math.ceil((100 - p) / s)
if len(Q) == 0 or d > Q[-1][0]: # 처음값이나 기존값보다 큰 값이라면
Q.append([d, 1])
else:
Q[-1][1] += 1
# ans: [2, 1]
ans = [cnt for deploy, cnt in Q]
return ans
res = solution([93, 30, 55], [1, 30, 5])
print(res)
'programmers 알고리즘 > 구현' 카테고리의 다른 글
42587번: 프린터 (0) | 2020.11.04 |
---|---|
42583번: 다리를 지나는 트럭 (0) | 2020.11.04 |
주식가격 (스택/큐) (0) | 2020.11.03 |
베스트앨범 (해시) (0) | 2020.11.03 |
위장 (해시) (0) | 2020.11.02 |