国产探花免费观看_亚洲丰满少妇自慰呻吟_97日韩有码在线_资源在线日韩欧美_一区二区精品毛片,辰东完美世界有声小说,欢乐颂第一季,yy玄幻小说排行榜完本

首頁 > 學院 > 開發設計 > 正文

數據結構實驗之隊列一:排隊買飯

2019-11-10 18:13:02
字體:
來源:轉載
供稿:網友

PRoblem Description

中午買飯的人特多,食堂真是太擁擠了,買個飯費勁,理工大的小孩還是很聰明的,直接奔政通超市,哈哈,確實,政通超市里面也賣飯,有好幾種菜,做的比食堂好吃多了,價格也不比食堂貴,并且買菜就送豆漿,吸引了不少童鞋。所以有時吧,人還是很多的,排隊是免不了的,悲劇的是超市只有兩個收銀窗口。

問題是這樣的:開始有兩隊人在排隊,現在咱們只研究第一隊,現在我們給每個人一個編號,保證編號各不相同,排在前面的人買完飯就走了,有些人挑完飯就排在后面等待付款,還有一些人比較聰明,看到另一個隊人比較少,直接離開這個隊到另一個隊去了。我要問的是隊的總人數和某個位置上人的編號。

Input

首先輸入一個整數m(m<10000),代表當前有m個人,第二行輸入m個數,代表每個人的編號,第三行輸入一個整數n(n<10000),代表隊列變動和詢問一共n次,以后n行,JOIN X表示編號為X(保證與以前的編號不同)的人加入;LEAVE Y表示第Y(Y小于當前隊列長度)個位置 上的人離隊 ;ASK Z(Z小于當前隊列長度)表示詢問第Z個位置上的人的編號;FINISH D表示有D個人買完飯離開了;LENGTH表示詢問隊列的長度 。保證所有數據在int 范圍內. Output

對每個詢問輸出相應的答案,每個答案占一行。 Example Input

31 2 36JOIN 4ASK 2LEAVE 2LENGTHFINISH 2LENGTH

Example Output

231

Hint

Author ma6174

#include <iostream>#include <algorithm>#include <stdio.h>#include <stdlib.h>#include <string.h>#include <bits/stdc++.h>#include <stack>#include <deque>//#include <queue>using namespace std;int main(){ int queue[11000]; int front, rear; front=rear=0; int m; scanf("%d", &m); for(int a=0;a<m; a++) { scanf("%d", &queue[rear++]); } int t; scanf("%d", &t); getchar(); char kk[10]; while(t--) { scanf("%s", kk); if(strcmp(kk, "JOIN")==0) { scanf("%d", &queue[rear++]); } else if(strcmp(kk, "LEAVE")==0) { int i; scanf("%d", &i); for(int a=front+i-1; a<rear; a++) { queue[a]=queue[a+1]; } rear--; } else if(strcmp(kk, "LENGTH")==0) { printf("%d/n", rear-front); } else if(strcmp(kk, "FINISH")==0) { int i; scanf("%d", &i); front+=i; } else if(strcmp(kk, "ASK")==0) { int i; scanf("%d", &i); printf("%d/n", queue[front+i-1]); } } return 0;}
發表評論 共有條評論
用戶名: 密碼:
驗證碼: 匿名發表
主站蜘蛛池模板: 云浮市| 巫山县| 永州市| 班玛县| 克什克腾旗| 望奎县| 湘潭市| 筠连县| 封丘县| 翁牛特旗| 潼关县| 越西县| 宽城| 台南市| 临朐县| 马鞍山市| 色达县| 瑞丽市| 三江| 同德县| 犍为县| 枣庄市| 铁力市| 绥江县| 余干县| 新乡县| 涟源市| 保康县| SHOW| 泸溪县| 平舆县| 城固县| 扎囊县| 丰台区| 贡山| 丰都县| 博野县| 大悟县| 江孜县| 汉中市| 铜川市|