문제
https://school.programmers.co.kr/learn/courses/30/lessons/42587
프로그래머스
코드 중심의 개발자 채용. 스택 기반의 포지션 매칭. 프로그래머스의 개발자 맞춤형 프로필을 등록하고, 나와 기술 궁합이 잘 맞는 기업들을 매칭 받으세요.
programmers.co.kr
풀이
해당 문제는 지정한 프로세스가 몇 번째로 반환되는지 구하는 문제이다.
일단 구하고자 하는 프로세스의 인덱스를 따로 지정한 뒤 프로세스 큐를 파이썬 deque으로 구현하여 문제를 풀었다. 딱히 어려웠던 부분을 뽑자면 프로세스 큐에서 값을 뽑고, 프로세스 큐에 있는 다른 값들과 비교할 때, 프로세스 큐에 비어있을 경우를 예외처리 해야 하는 정도가 어려웠다고 생각한다.
from collections import deque
def solution(priorities, location):
index = location
queue = deque(priorities)
count = 0
while queue:
value = queue.popleft()
index -= 1
if len(queue) == 0:
count += 1
return count
elif value >= max(queue):
count += 1
if index < 0:
return count
else:
queue.append(value)
if index < 0:
index = len(queue) - 1
'Algorithm > Programmers' 카테고리의 다른 글
프로그래머스 LV2 최솟값 만들기 (0) | 2023.07.17 |
---|---|
프로그래머스 LV2 올바른 괄호 (0) | 2023.07.17 |
프로그래머스 LV2 주차 요금 계산 (0) | 2023.07.11 |
프로그래머스 Lv2 구명보트 (0) | 2023.07.04 |
프로그래머스 Lv1 바탕화면 정리 (0) | 2023.05.30 |