문제설명은 해당 링크 들어가면 보기 가능
https://programmers.co.kr/learn/courses/30/lessons/42587
pop을 이용하지 않고 index를 이용하여 풀었다.
index를 계속 +1 해주면서
if문으로 max 값이라면 해당 값을 0으로 바꿔주고, cnt 를 +1 해준다.
만일 if문에 걸린 max값의 index가 찾을 위치 location과 같다면 cnt +1 을 해준값이 answer이다. 답 찾고 나면 break문으로 종료
def solution(priorities, location):
answer = 0
idx = 0
cnt = 0
l = len(priorities)
m = max(priorities)
while True:
if priorities[idx % l] < m:
idx += 1
elif priorities[idx % l] == m:
if idx % l == location:
cnt += 1
answer = cnt
break
else:
priorities[idx % l] = 0
idx += 1
cnt += 1
m = max(priorities)
return answer
print(solution([1, 1, 9, 1, 1, 1], 0))