hdu1702 ACboy needs your help again![简单STL 栈 队列]
2024-10-21 09:52:27
题目地址
题干
代码和解释
本题很简单,只要掌握STL stack和STL vector的语法即可作答。记录本题是为了记录STL vector的操作。
注意需要#include<stack>
和#include<vector>
。
这里是c++代码。
#include<iostream>
#include<stack>
#include<queue>
#include<string.h>
using namespace std;
void stack_opr(int m);
void queue_opr(int m);
int main()
{
int n;
int m;
char ff[10];
scanf("%d",&n);
while(n--){
scanf("%d",&m);
getchar();
scanf("%s",ff);
if(strcmp(ff,"FILO")==0){
stack_opr(m);
}
else if(strcmp(ff,"FIFO")==0){
queue_opr(m);
}
}
return 0;
}
void stack_opr(int m){
char io[4];
int num;
int i;
stack<int> s;
for(i=0;i<m;i++){
scanf("%s",io);
if(strcmp(io,"IN")==0){
scanf("%d",&num);
s.push(num);
}
else if(strcmp(io,"OUT")==0){
if(s.empty()==1){
printf("None\n");
}
else{
printf("%d\n",s.top());
s.pop();
}
}
}
return;
}
void queue_opr(int m){
char io[4];
int num;
int i;
queue<int> q;
for(i=0;i<m;i++){
scanf("%s",io);
//printf("io=%s\n",io);
if(strcmp(io,"IN")==0){
scanf("%d",&num);
q.push(num);
}
else if(strcmp(io,"OUT")==0){
if(q.empty()==1){
printf("None\n");
}
else{
printf("%d\n",q.front());
q.pop();
}
}
}
return;
}
参考
例子 | 说明 |
---|---|
queue q; | 定义栈,Type为数据类型,如int,float,char等 |
q.push(item); | 把item放进队列 |
q.front(); | 返回队首元素,但不会删除 |
q.pop(); | 删除队首元素 |
q.back(); | 返回队尾元素 |
q.size(); | 返回元素个数 |
q.empty(); | 检查队列是否为空 |
最新文章
- JackRabbit的前世今生
- Windows 7 激活时的坑
- RabbitMQ入门教程——.NET客户端使用
- Linq to sql-存储过程
- C#里List.Sort的用法
- alibaba的FastJson(高性能JSON开发包)
- poj 3348--Cows(凸包求面积)
- centos6配置远程桌面,使用xmanager访问
- GROUP BY,WHERE,HAVING之间的差别和使用方法
- uml系列(七)——交互图
- PL/SQL 记录 Record 简介
- VirtualBox更改默认路径
- angular2 学习笔记 ( animation 动画 )
- Java学习笔记之——枚举类
- 手把手丨我们在UCL找到了一个糖尿病数据集,用机器学习预测糖尿病(三)
- (转)mybatis-plus入门
- MYSQL指定用户访问指定数据库
- ystem.Windows.Forms.SplitContainer : ContainerControl, ISupportInitialize
- js学习笔记14----DOM概念及子节点类型
- centos6.3_gcc安装软件及流程
热门文章
- jq1.6版本前后,attr()和prop()的区别,来自慕课网的回答
- 英语dyamaund钻石
- 多线程:Monitor、synchronized、volatile
- 不依赖Python第三方库实现梯度下降
- Yii2 路由美化
- 《大象 Thinking in UML》读书笔记:Process-oriented vs. Object-oriented
- 小白式Git使用教程,从0到1
- 项目Beta冲刺 - 凡事预则立
- linux中如何升级Python
- Problem I. Wiki with Special Poker Cards