STL 哈哈型自動機

2021-09-24 20:34:59 字數 1589 閱讀 7031

problem h: stl——哈哈型自動機time limit: 1 sec memory limit: 128 mb

submit: 2236 solved: 1596

[submit][status]descriptionxiaoxing發明了乙個哈哈型自動機,該自動機能夠同時處理n個佇列。其中,佇列的編號為1…n。給定m個操作,模擬該自動機的工作狀態。

第一行有2個整數n,m(1≤n, m≤10,000),表示自動機能處理n個佇列,接下來m行每行一條操作指令。

每條指令的格式如下:

指令

指令說明

init

將自動機初始化,此時所有的佇列清空。

push id val

把整數val加入到編號id的佇列的尾部。

pop id

輸出並刪除編號id的佇列的隊首元素,如果隊列為空,則輸出「null」。

在每條指令中,id的編號在1…n中,val的取值範圍為-231~231。輸入資料保證操作的第一條指令都是是init。

input本題有多組輸入資料,你必須處理到eof為止。

output請對輸入資料中每條pop指令的結果依次輸出一行結果。

sample input

3 12

init

push 1 100

pop 2

push 3 300

push 1 200

push 2 -5

pop 2

push 2 -10

pop 1

init

push 1 7

pop 1

sample output

null

-5100

7hint

stl中的queue容器。

關於佇列的知識;

使用queue之前,要先利用建構函式乙個佇列物件,才可以進行元素的入隊,出隊,取隊首和隊尾等操作;

(1).queue() queue q; 或者 queueq[10000];

(2).queue(const queue&) 複製建構函式

例如:用一行**利用queue物件q1,建立乙個以雙向鍊錶為底層容器的queue物件q2

queueq1;

queueq2(q1);

(3).元素入隊 函式為:push()例如:q.push(3),意思是將3入隊 ,注意佇列的大小不預設

(4).元素出隊 函式為:pop()例如:q.pop()

(5)。取對頭元素 函式為:front()

(6),取隊尾元素 函式為:back()

(7)。判斷對空 函式為:empty()

(8)。佇列的大小 函式為:size()返回佇列的當前元素的個數

#include #include using namespace std;

queuep[15000];

int main()

}else if(s == "push")

else if(s == "pop")

else

cout<<"null"<}}}

return 0;

}

STL 呵呵型自動機

problem i stl 呵呵型自動機time limit 8 sec memory limit 128 mb submit 3259 solved 1427 submit status descriptionxiaofei最近研發了乙個呵呵型自動機,該自動機能夠同時處理n個佇列。其中,佇列的編號...

Problem E STL 呵呵型自動機

time limit 8 sec memory limit 128 mb submit 2045 solved 814 submit status web board xiaofei最近研發了乙個呵呵型自動機,該自動機能夠同時處理n個佇列。其中,佇列的編號為1.n。給定m個操作,模擬該自動機的工作狀...

AC自動機及字尾自動機

ac自動機是一種基於trie樹的演算法,其本質和kmp上的處理很相似。trie樹結構 kmp轉移思路 ac自動機組要由三個部分組成 trie樹的建立 fail指標的匹配 對ac自動機的詢問 每次建立自動機會有一次初始化 ac自動機類 struct node node結構體 struct ac voi...