응급식 (큐)
생성일: 2022년 1월 27일 오후 5:58
구현 코드
# 응급실 (큐)
import sys
from collections import deque
#sys.stdin = open("input.txt", "rt")
n, m = map(int, input().split())
patientsQ = [(index, val) for index, val in enumerate(list(map(int, input().split())))]
patientsQ = deque(patientsQ)
cnt = 0
while True:
cur = patientsQ.popleft()
for i, v in patientsQ:
if v > cur[1]:
patientsQ.append(cur)
break
else:
if cur[0] != m:
cnt += 1
else:
cnt += 1
break
print(cnt)
모범 답안
import sys
from collections import deque
sys.stdin=open("input.txt", "r")
n, m=map(int, input().split())
Q=[(pos, val) for pos, val in enumerate(list(map(int, input().split())))]
Q=deque(Q)
cnt=0
while True:
cur=Q.popleft()
if any(cur[1]<x[1] for x in Q):
Q.append(cur)
else:
cnt+=1
if cur[0]==m:
print(cnt)
break
- 차이점
- 내가 구현한 코드에서는 for i,v in pateintsQ: 를 통해 cur보다 큰 값이 존재하는지 검사하는 코드를 반복문으로 직접 구현하였다.
- 모범 답안에서는 해당 부분을 any() 함수를 사용하여 구현하였다.
Author And Source
이 문제에 관하여(응급식 (큐)), 우리는 이곳에서 더 많은 자료를 발견하고 링크를 클릭하여 보았다 https://velog.io/@lsj8706/응급식-큐저자 귀속: 원작자 정보가 원작자 URL에 포함되어 있으며 저작권은 원작자 소유입니다.
우수한 개발자 콘텐츠 발견에 전념 (Collection and Share based on the CC Protocol.)