세용용용용
2023. 7. 8. 15:33


나의 코드
def solution(priorities, location):
answer = 0
#priorities의 값과 인덱스를 추가한 리스트 생성
new_list = []
for i in range(len(priorities)):
new_list.append([priorities[i], i])
print(new_list)
#언제 프로세스를 꺼내는지 카운트를 하자
count = 0
#원하는 location의 값이 실행될떄까지 반복하자
while True:
#현재 우선순위가 가장 높은 값
first_start = max(priorities)
#우선순위가 높은 값이 앞에 올떄까지
#낮은 우선순위의 프로세스를 뒤로 보내준다
while True:
if new_list[0][0] == first_start:
break
else:
new_list.append(new_list.pop(0))
count+=1
#원하는 프로세스가 현재 실행될 프로세스면 break
if new_list[0][1] == location:
break
#그렇지 않으면 프로세스를 실행시키고 다시 반복문 시작
else:
new_list.pop(0)
priorities.remove(first_start)
#print(new_list)
answer = count
#print(answer)
return answer
solution([1, 1, 9, 1, 1, 1], 0)