時間限制 2000 ms ・ 記憶體限制 256 MB
題目描述
有一個資料結構支援放入與取出元素。你取得一段操作紀錄及每次取出的值,要判斷它可能是:
- 堆疊(stack):後進先出。
- 佇列(queue):先進先出。
- 優先佇列(priority queue):每次取出目前最大的值。
它也可能不符合上述任何一種。
輸入格式
輸入包含多筆資料,讀到檔案結尾為止。每筆先有操作數 n,1 ≤ n ≤ 1000;接著 n 行,每行是 1 x 或 2 x。
1 x 表示放入 x,2 x 表示成功取出且所得值為 x。所有 x 都是 1 到 100 的正整數。
輸出格式
若恰好符合一種,輸出 stack、queue 或 priority queue。若全部不符合,輸出 impossible;若符合多於一種,輸出 not sure。每筆各占一行。
題目來源:UVa 11995 — I Can Guess the Data Structure!。 原題:https://onlinejudge.org/external/119/11995.pdf
範例測資
範例輸入 1
6 1 1 1 2 1 3 2 1 2 2 2 3 6 1 1 1 2 1 3 2 3 2 2 2 1 2 1 1 2 2 4 1 2 1 1 2 1 2 2 7 1 2 1 5 1 1 1 3 2 5 1 4 2 4
範例輸出 1
queue not sure impossible stack priority queue
請先登入後再提交程式碼
討論與題解
載入討論區…