# point 각 접시별 점수가 들어있는 배열
# dish 먹고자하는 접시의 위치
def solution(point, dish):
#배열 순서는 0부터 시작, 입력은 1부터시작이기 때문에 -1 해준다.
dish -=1
answer = 0
#오름차순으로 정렬
s = sorted(point)
while True:
# point 제일 앞의 점수를 추출하여 p에 넣어 놓는다. 즉, 앞에 도착한 접시의 점수!
# pop과 append를 활용해 회전하도록 구현할 예정 !
p = point.pop(0)
#현재 s[0]은 point 배열을 에서 가장 작은 값을 가지고 있음!
#현재 가장 낮은 점수를 가지고 있는 접시가 앞에 도착했다면 먹도록 할것!
if s[0]==p:
#앞에 도착한 접시가 선택한 접시라면 먹고 반복문 종료
if dish == 0:
break
#선택한 접시 움직임.
dish-=1
#한 접시를 먹었음으로 하나 줄어듬
s.pop(0)
else:
#접시위 초밥을 먹을 수 있는 조건이 충족되지 않아 그대로 둔다
# pop했던것을 다시 append.
point.append(p)
#접시의 움직임 만약 선택한 접시가 앞에 도착했다면 맨뒤로 보내고,
#그렇지 않다면 한칸 당긴다.
dish = len(point)-1 if dish==0 else dish-1
# 반복 한번당 접시 한번 지나감을 나타냄.
answer+=1
return answer
#한글 변수 풀이
def solution(접시점수, 먹을접시위치):
먹을접시위치 -= 1
정답 = 0
정렬된접시점수 = sorted(접시점수)
while True:
맨앞접시 = 접시점수.pop(0)
if 정렬된접시점수[0] == 맨앞접시:
if 먹을접시위치 == 0:
break
먹을접시위치 -= 1
정렬된접시점수.pop(0)
else:
접시점수.append(맨앞접시)
먹을접시위치 = len(접시점수) - 1 if 먹을접시위치 == 0 else 먹을접시위치 - 1
정답 += 1
return 정답
print(solution(접시점수, 먹을접시위치))