문제
1. 진도 100일 때 서비스에 반영 가능
2. 각 기능의 개발 속도는 모두 다르고, 앞 서비스가 완료되어야 뒤 서비스도 반영 가능
3. progresses: 작업의 진도 / speed : 개발 속도 , 하루에 얼마나 작업할 수 있는지
4. 각 배포마다 몇 개의 기능이 배포 되는지를 return
풀이
시도하다가 만것
def solution(progresses, speeds):
#일단 dictionary 만들어놓기
dic = dict(zip(progresses, speeds))
day=[]
for key, value in dic.items():
if key+value*day = 100
answer = []
return answer
처음에는 단순하게 문제 의미만 파악하면서 풀어보려고 했는데 이렇게 진행될 경우, 날짜를 무한으로 돌릴 수도 없고 ..
이렇게 접근하면 안된다. 큐/ 스택 범주에 있는 문제니까 다시 고민=> while 문 사용, 큐 스택
def solution(progresses, speeds):
answer =[]
#우선 작업 리스트 하나씩 100퍼 만들기 -> 달성하면 cnt 저장하고 방빼
while progresses:
cnt =0
while progresses and progresses[0]>=100:
cnt+=1
progresses.pop(0)
speeds.pop(0)
progresses = [progresses[i]+speeds[i] for i in range(len(progresses))]
if cnt:
answer.append(cnt)
return answer
300x250
'Algorithm' 카테고리의 다른 글
[코딩테스트/ Python] 탐색 알고리즘 DFS/ BFS (0) | 2023.05.13 |
---|---|
[코딩테스트/Python] 꼭 필요한 자료구조 기초: 재귀함수 (0) | 2023.05.08 |
[코딩테스트/Python] 프로그래머스 두 큐 합 같게 만들기 (0) | 2023.05.01 |
[코딩테스트/Python] 꼭 필요한 자료구조 기초: 스택과 큐 (0) | 2023.03.13 |
[코딩 테스트/Python] 구현 문제 (0) | 2023.03.06 |