프로그래밍/Python

백준_python 1966번 프린터 큐(스택, 큐)

O'bin 2024. 4. 17. 20:18

<문제 링크>

https://www.acmicpc.net/problem/1966

 

1966번: 프린터 큐

여러분도 알다시피 여러분의 프린터 기기는 여러분이 인쇄하고자 하는 문서를 인쇄 명령을 받은 ‘순서대로’, 즉 먼저 요청된 것을 먼저 인쇄한다. 여러 개의 문서가 쌓인다면 Queue 자료구조에

www.acmicpc.net

 

<정답 코드>

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
= int(input())
 
 
for _ in range(t):
    n, m = map(int, input().split())
    file = list(map(int, input().split()))
 
    answer = 1
 
    while file:
        if file[0< max(file):
            file.append(file.pop(0))
        else:
            if m == 0:
                break
            file.pop(0)
            answer += 1
 
        m = m-1 if m > 0 else len(file- 1
 
    print(answer)
cs

 

처음엔 deque으로 구현하려고 했는데, pop을 이용하면 리스트로 간단히 구현할 수 있다.