Problem#
有種資料結構(你不知道是什麼)支援兩種操作:放入、拿出。給定一個操作的序列,你要寫支程式推測出是哪種資料結構(stack, queue, priority queue),不確定則輸出不確定,不知道輸出不知道。
輸入#
每筆測資第一行有數字 $n$($1 \le n \le{1000}$),代表有 $n$ 筆操作
接著 $n$ 行,每行有兩個數字,第一個數字是操作,1是放入,後頭接著要放入的數字;2是拿出,後頭接著要拿出的數字。
以EOF結尾
輸出#
| 輸出 | 意義 |
|---|---|
stack |
是stack |
queue |
是queue |
priority queue |
是priority queue |
not sure |
不確定(可能是以上多種) |
impossible |
不知道 |
想法#
直接實作stack, queue, priority queue的功能(STL有),跟著操作就好。
如果有錯就代表不是那種資料結構。
AC code#
https://github.com/roy4801/solved_problems/blob/master/uva/11995.cpp