문제 설명
음식점에서 손님이 도착할 때마다 번호표를 발급하고, 손님들은 발급받은 번호표를 들고 대기 줄의 맨 뒤에 섭니다. 주문이 준비될 때마다 대기 줄 맨 앞의 손님이 호출되어 음식을 받아 가고, 대기 줄에서 나가게 됩니다.
대기 줄에서 일어나는 상황은 아래와 같은 형식으로 주어집니다.
- “arrive x”: 손님이 도착해 번호표 x를 받고 줄 맨 뒤에 섭니다.
- “next”: 줄 맨 앞 손님이 호출되어 대기 줄에서 나갑니다.
대기 줄 상태 배열 commands가 주어졌을 때, 대기 줄에 남아있는 번호를 앞에서부터 순서대로 반환하는 solution 함수를 작성하시오.
제한 사항
commands의 길이는 1 이상 100,000 이하입니다.commands의 원소는 "arrive x" (x는 1 이상 10,000 이하의 자연수) 또는 "next"로만 주어집니다.commands에서 대기 줄이 비어있는데 "next" 상태가 일어나는 입력은 주어지지 않습니다.
예시 테스트케이스 설명
| 테스트케이스 번호 | commands | return |
|---|---|---|
| 1 | ["arrive 5","arrive 3","next","arrive 9"] | [3,9] |
| 2 | ["arrive 1","next","arrive 2","next"] | [] |
| 3 | ["arrive 7","arrive 8","arrive 7","next"] | [8,7] |
1번 테스트케이스 설명
-
대기 줄의 상황은 다음과 같습니다.
commands 대기 줄 (초기) [] "arrive 5" [5] "arrive 3" [5,3] "next" [3] "arrive 9" [3,9] -
따라서 대기 줄에 남아있는 번호인
[3,9]를 반환합니다.
2번 테스트케이스 설명
-
대기 줄의 상황은 다음과 같습니다.
commands 대기 줄 (초기) [] "arrive 1" [1] "next" [] "arrive 2" [2] "next" [] -
따라서 대기 줄에 남아있는 번호가 없으므로
[]를 반환합니다.
3번 테스트케이스 설명
-
대기 줄의 상황은 다음과 같습니다.
commands 대기 줄 (초기) [] "arrive 7" [7] "arrive 8" [7,8] "arrive 7" [7,8,7] "next" [8,7] -
따라서 대기 줄에 남아있는 번호인
[8,7]을 반환합니다.