1966(프린터 큐) - 자료구조

지환·2023년 10월 26일
0

백준(python)

목록 보기
63/67
post-thumbnail

출처 | https://www.acmicpc.net/problem/1966

코드

# 요구사항 분석
import sys
from collections import deque

input = sys.stdin.readline
k = int(input())   # 두 번째 줄에는 문서의 개수 N과 문서의 위치를 나타내는 정수 M이다.

for _ in range(k):
  n,m = map(int,input().split())
  que = deque(list(map(int,input().split())))
  count = 0 
  while que:
    m -= 1
    best = max(que)
    front = que.popleft()

    if front == best:
      count += 1
      if m<0:
        print(count)
        break
    else:
      que.append(front)
      if m<0:
        m = len(que) - 1

처음 요구사항 분석을 제대로 못 했다. 맨 마지막 입력 값에 대해 이해를 제대로 하지 못하고 접근 했다가... 된통 당했다.

내가 이해한 정보는

  1. 두 번째 줄에는 문서의 개수 N과 문서의 위치를 나타내는 정수 M이고,
  • 필자는 해당 문제가 이해가 되지 않아 3번 정도 다시 읽었다.

  • Key값은 m의 설정과 best(최댓값) front(가장 앞에 있는 값을 통해) 구현을 했다.

profile
아는만큼보인다.

0개의 댓글