點這裡到原題
有n個小組要排成乙個佇列,每個小組中有若干人。
當乙個人來到佇列時,如果佇列中已經有了自己小組的成員,他就直接插隊排在自己小組成員的後面,否則就站在隊伍的最後面。
請你編寫乙個程式,模擬這種小組佇列。
輸入格式:
輸入將包含乙個或多個測試用例。
對於每個測試用例,第一行輸入小組數量t。
接下來t行,每行輸入乙個小組描述,第乙個數表示這個小組的人數,接下來的數表示這個小組的人的編號。
編號是0到999999範圍內的整數。
乙個小組最多可包含1000個人。
最後,命令列表如下。 有三種不同的命令:
1、enqueue x - 將編號是x的人插入佇列;
2、dequeue - 讓整個佇列的第乙個人出隊;
3、stop - 測試用例結束
每個命令佔一行。
當輸入用例t=0時,代表停止輸入。
需注意:測試用例最多可包含200000(20萬)個命令,因此小組佇列的實現應該是高效的:
入隊和出隊都需要使用常數時間。
輸出樣例
對於每個測試用例,首先輸出一行「scenario #k」,其中k是測試用例的編號。
然後,對於每個dequeue命令,輸出出隊的人的編號,每個編號佔一行。
在每個測試用例(包括最後乙個測試用例)輸出完成後,輸出乙個空行。
資料範圍
1≤t≤10001≤t≤1000
輸入樣例:
23 101 102 103
3 201 202 203
enqueue 101
enqueue 201
enqueue 102
enqueue 202
enqueue 103
enqueue 203
dequeue
dequeue
dequeue
dequeue
dequeue
dequeue
stop
25 259001 259002 259003 259004 259005
6 260001 260002 260003 260004 260005 260006
enqueue 259001
enqueue 260001
enqueue 259002
enqueue 259003
enqueue 259004
enqueue 259005
dequeue
dequeue
enqueue 260002
enqueue 260003
dequeue
dequeue
dequeue
dequeue
stop
0輸出樣例:
scenario #1
101102
103201
202203
scenario #2
259001
259002
259003
259004
259005
260001
#include
using
namespace std;
deque<
int>q[
1010
],p;
int c[
1000010
],n,m,x,t=0*
*加粗樣式**;
char st[10]
;int
main()
}//printf
("scenario #%d\n"
,++t)
;while(~
scanf
("%s"
,&st)
&&st[0]
!='s'
)else
} cout<}return0;
}
1 3 2微信小程式 WXSS
wxss weixin style sheets 是mina框架設計的一套樣式語言,用於描述wxml的元件樣式。wxss用來決定wxml 的元件應該怎麼顯示。與css相比我們擴充套件的特性有 裝置rpx換算px 螢幕寬度 750 px換算rpx 750 螢幕寬度 iphone5 1rpx 0.42p...
AcWing 模擬佇列 佇列 模擬
時 空限制 1s 64mb 實現乙個佇列,佇列初始為空,支援四種操作 1 push x 向隊尾插入乙個數x 2 pop 從隊頭彈出乙個數 3 empty 判斷佇列是否為空 4 query 查詢隊頭元素。現在要對佇列進行m個操作,其中的每個操作3和操作4都要輸出相應的結果。第一行包含整數m,表示操作次...
AcWing 滑動視窗 單調佇列
時 空限制 1s 64mb 給定乙個大小為n 106的陣列。有乙個大小為k的滑動視窗,它從陣列的最左邊移動到最右邊。您只能在視窗中看到k個數字。每次滑動視窗向右移動乙個位置。以下是乙個例子 該陣列為 1 3 1 3 5 3 6 7 k為3。視窗位置 最小值最大值 1 3 1 3 5 3 6 7 13...