Uva 11995 - I Can Guess the Data Structure!

題目

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