알고리즘/프로그래머스
프로그래머스 기능개발 (Python)
방구석프로
2024. 4. 12. 14:13
https://school.programmers.co.kr/learn/courses/30/lessons/42586
프로그래머스
코드 중심의 개발자 채용. 스택 기반의 포지션 매칭. 프로그래머스의 개발자 맞춤형 프로필을 등록하고, 나와 기술 궁합이 잘 맞는 기업들을 매칭 받으세요.
programmers.co.kr
문제해결을 위한 과정
이 문제는 각 배열을 조회하면서 해당하는 speeds를 더해주면 됩니다. 그 후 100이 넘는지 확인한 뒤(작업 완료) 완료된 작업만큼을 꺼내주면 되는 문제입니다. 단 이때 해당하는 인덱스의 speeds도 꺼내줘야 합니다. 소스코드는 다음과 같습니다.
소스코드
def solution(progresses, speeds):
answer = []
while True:
if len(progresses) == 0:
break
for i in range(len(progresses)):
progresses[i] += speeds[i]
cnt = 0
for i in range(len(progresses)):
if progresses[i] >= 100:
cnt += 1
else:
break
for i in range(cnt):
progresses.pop(0)
speeds.pop(0)
if cnt > 0:
answer.append(cnt)
return answer