模拟插队,出队,POJ(2259)
题目链接:http://poj.org/problem?id=2259
水题一个,就是要记录一下每个队列是否有人bool[i],

#include <iostream>
#include <string>
#include <queue>
#include <map>
#include <cstdio> using namespace std; int nCase,nNum; ///队列总数
queue <long> nQue[]; ///存储每个队列
queue <int> nS; ///存储队列号
int nM[]; ///队列与队列号的映射表
bool nFlag[]; ///是否有同组元素 void init() {
for(int i=; i!=nNum; i++) {
nFlag[i]=false;
while(!nQue[i].empty())
nQue[i].pop();
}
while(!nS.empty())
nS.pop();
} void input() {
int nElem,elemNum;
for(int i=; i!=nNum; ++i) {
cin>>elemNum; ///每个队的人数
for(int j=; j!=elemNum; j++) {
cin>>nElem;
nM[nElem]=i;
}
}
} void solve() {
string nCommand;
int nElem;
cout<<"Scenario #"<<++nCase<<endl;
while(cin>>nCommand,nCommand!="STOP") {
if(nCommand=="ENQUEUE") {
cin>>nElem;
if(!nFlag[nM[nElem]]) {
nFlag[nM[nElem]]=true;
nS.push(nM[nElem]);
}
nQue[nM[nElem]].push(nElem);
} else if(nCommand=="DEQUEUE") {
int nId = nS.front();
cout<<nQue[nId].front()<<endl;
nQue[nId].pop();
if(nQue[nId].empty()) {
nS.pop();
nFlag[nId]=false;
}
}
}
cout<<endl;
} int main() {
nCase=;
while(cin>>nNum,nNum) {
init();
input();
solve();
}
return ;
}
模拟插队,出队,POJ(2259)的更多相关文章
- 牛客网Wannafly挑战赛15 B车辆安排(模拟)AND C 出队(规律)
传送门 :B题:点我 C题: 点我 题目描述 有n个队伍,每个队伍的人数小于等于5,每辆车最多坐5个人,要求一个队伍的人都在一辆车上,求最少的车数 输入描述: 第一行n第二行n个数,表示每个队伍的人数 ...
- POJ 2259 Team Queue(队列)
题目原网址:http://poj.org/problem?id=2259 题目中文翻译: Description 队列和优先级队列是大多数计算机科学家已知的数据结构. 然而,Team Queue并不是 ...
- POJ 2259 - Team Queue - [队列的邻接表]
题目链接:http://poj.org/problem?id=2259 Queues and Priority Queues are data structures which are known t ...
- Team Queue POJ - 2259 (队列)
Queues and Priority Queues are data structures which are known to most computer scientists. The Team ...
- queue POJ 2259 Team Queue
题目传送门 题意:先给出一些小组成员,然后开始排队.若前面的人中有相同小组的人的话,直接插队排在同小组的最后一个,否则只能排在最后面.现在有排队和出队的操作. 分析:这题关键是将队列按照组数分组,用另 ...
- js模拟抛出球运动
js练手之模拟水平抛球运动 -匀加速运动 -匀减速运动 模拟运动有些基本的思路,当前所在点的坐标,元素的长宽是多少,向右/向下运动x/y增加,向上/向左运动x/y减少,运动的路程是多少,用什么方程进行 ...
- C语言实现循环队列的初始化&进队&出队&读取队头元素&判空-2
/*顺序表实现队列的一系列操作(设置flag标志不损失数组空间)*/ #include<stdio.h> #include<stdlib.h> #define Queue_Si ...
- C语言实现链队列的初始化&进队&出队
/*链表实现队列的一系列操作*/ #include<stdio.h> #include<stdlib.h> #define OK 1 #define ERROR 0 typed ...
- JS优先队列排序。出队时,先找出优先级最高的元素,再按照先进先出出队。
JS优先队列排序.出队时,先找出优先级最高的元素,再按照先进先出出队. /* * 优先队列 * 出队时,先找出优先级最高的元素,再按照先进先出出队. * */ function Queue(){ th ...
- poj 2259 Team Queue
Team Queue Time Limit: 2000MS Memory Limit: 65536K Total Submissions: 2977 Accepted: 1092 Descri ...
随机推荐
- (转)Mat, vector<point2f>,Iplimage等等常见类型转换
在mfc c++ 以及opencv 编写程序当中,很多常用的类型转换,现在总结一下.(注意加相应的头文件,这里不罗嗦) 提纲: 1. Mat ---> Iplimage 2. Iplimage ...
- my10_使用binlog2sql闪回DML操作
下载git clone https://github.com/danfengcao/binlog2sql.git 原理使用python连接到指定的库,读取要恢复表的表结构和对应的binlog日志,在b ...
- php数组·的方法-数组排序
/* * * 数组排序函数*/ //asort() 数组元素值升序排序 //arsort() 降序 $arr7=array(1,23,65,34,3,2,3,34,453,54,456,65,5); ...
- java课后思考问题(一)
1.一个Java类文件中真的只能有一个共有类吗? 一个Java类文件中只能有一个公有类 2.请使用Eclipse或javac检测一下以下代码,有错吗? 在Java中,可以将一个类定义在另一个类里面或者 ...
- 爬虫(GET)——爬baidu.com主页
工具:python3 目标:www.baidu.com 工作流程: 1)反爬虫第一步:抓包工具fiddler抓取页面请求信息,得到User-Agent的值,用于重构urllib.request.Req ...
- VSCode个人实用插件
1.汉化插件 Chinese (Simplified) Language Pack for Visual Studio Code 发布者:Microsoft 2.主题插件(IDEA主题) Darcul ...
- 对象池1(方法功能)PoolOption
2.对象池PoolOption(方法功能) //单类型缓冲对象管理(单模池操作管理)功能: 激活.收回.预加载等. namespace kernal { [System.Serializable] p ...
- 转载【Ubuntu】Ubuntu14.04虚拟机调整窗口大小自适应VMware14窗口
Ubuntu屏幕居中一小块,很不好看 查看-–> 自动调整大小—>自动适应客户机/自动适应窗口 切一下就可以把Ubuntu图的界面大小调的和VMware窗口自适应了 效果: 转载 自h ...
- css悬浮右侧悬浮
<html><head><title>CSSDemo</title><style type"text/css"> .ho ...
- mapreduce总结
一.mapreduce简介 MapReduce是一种分布式计算模型,是hadoop的核心组件之一,是Google提出的,主要用于搜索领域,解决海量数据的计算问题. MR有两个阶段组成:Map和Redu ...