[BOJ] 백준 1966 프린터 큐

태환·2024년 2월 3일
0

Coding Test

목록 보기
42/151

📌 [BOJ] 백준 1966 프린터 큐

📖 문제

📖 예제

📖 풀이

T = int(input())
for _ in range(T):
  N, M = map(int, sys.stdin.readline().split())
  queue = deque(list(map(int, sys.stdin.readline().split())))
  cnt = 0
  while queue:
    best = max(queue)
    front = queue.popleft()
    M -= 1
    if front == best:
      cnt += 1
      if M < 0:
        print(cnt)
        break
    else:
      queue.append(front)
      if M < 0:
        M = len(queue) - 1

입력으로 받은 M을 활용하여 popleft()로 반환한 값이 해당 queue의 max 값이면서 우리가 찾고 있는 M 번째 수인지 확인하고 그 수에 대한 순위를 출력한다.

profile
연세대학교 컴퓨터과학과 석사 과정

0개의 댓글