codevs 3137-3139 栈练习 x
3中 换行需谨慎!!!一定要注意换行!!!
3137 栈练习1
给定一个栈(初始为空,元素类型为整数,且小于等于100),只有两个操作:入栈和出栈。先给出这些操作,请输出最终栈的栈顶元素。 操作解释:1表示入栈,2表示出栈
N(操作个数)
N个操作(如果是入栈则后面还会有一个入栈元素)
具体见样例(输入保证栈空时不会出栈)
最终栈顶元素,若最终栈空,输出”impossible!”(不含引号)
3
1 2
1 9
2
2
对于100%的数据 N≤1000 元素均为正整数且小于等于100
分类标签 Tags 点此展开
#include<iostream>
#include<cstdio>
#include<cstring> using namespace std; struct Q{//手写栈
int top;
int stack[];
Q ()
{
top=;
}
void pop()
{
top--;
}
int push(int x)
{
stack[++top]=x;
}
int tops()
{
return stack[top];
}
}q; int main()
{
int n,top=,x,a,b;
scanf("%d",&n);
while(n--)
{
cin>>x;
switch(x)
{
case :
cin>>a;
q.push(a);
break;
case :
if(q.top>)
q.pop();
else {cout<<"impossible!"; return ;}
break;
}
}
if(q.top==) cout<<"impossible!";
else
cout<<q.tops();
return ;
}
3138 栈练习2
(此题与栈练习1相比改了2处:1加强了数据 2不保证栈空时不会出栈)
给定一个栈(初始为空,元素类型为整数,且小于等于100),只有两个操作:入栈和出栈。先给出这些操作,请输出最终栈的栈顶元素。 操作解释:1表示入栈,2表示出栈
N(操作个数)
N个操作(如果是入栈则后面还会有一个入栈元素)
具体见样例(输入不保证栈空时不会出栈)
最终栈顶元素,若最终栈空,或栈空时有出栈操作,输出”impossible!”(不含引号)
3
1 2
2
2
impossible!
对于100%的数据 N≤100000 元素均为正整数且小于等于10^8
分类标签 Tags 点此展开
#include<iostream>
#include<cstdio>
#include<cstring> using namespace std; struct Q{
int top;
int stack[];
Q ()
{
top=;
}
void pop()
{
top--;
}
int push(int x)
{
stack[++top]=x;
}
int tops()
{
return stack[top];
}
}q; int main()
{
int n,top=,x,a,b;
scanf("%d",&n);
while(n--)
{
cin>>x;
switch(x)
{
case :
cin>>a;
q.push(a);
break;
case :
if(q.top>)
q.pop();
else
{
cout<<"impossible!";
return ;
}
break;
}
}
if(q.top==) cout<<"impossible!";
else
cout<<q.tops();
return ;
}
3139 栈练习3
比起第一题,本题加了另外一个操作,访问栈顶元素(编号3,保证访问栈顶元素时或出栈时栈不为空),现在给出这N此操作,输出结果。
N
N次操作(1入栈 2出栈 3访问栈顶)
K行(K为输入中询问的个数)每次的结果
6
1 7
3
2
1 9
1 7
3
7
7
对于50%的数据 N≤1000 入栈元素≤200
对于100%的数据 N≤100000入栈元素均为正整数且小于等于10^4
分类标签 Tags 点此展开
#include<iostream>
#include<cstdio>
#include<cstring> using namespace std; struct Q{
int top;
int stack[];
Q ()
{
top=;
}
void pop()
{
top--;
}
int push(int x)
{
stack[++top]=x;
}
int tops()
{
return stack[top];
}
}q; int main()
{
int n,top=,x,a,b;
scanf("%d",&n);
while(n--)
{
cin>>x;
switch(x)
{
case :
cin>>a;
q.push(a);
break;
case :
q.pop();
break;
case :
cout<<q.tops()<<endl;//就是这里!一定要注意换行
break;
}
}
return ;
}
codevs 3137-3139 栈练习 x的更多相关文章
- 栈 练习 Codevs 3137 3138 3139
3137 栈练习1 时间限制: 1 s 空间限制: 128000 KB 题目等级 : 黄金 Gold 题目描述 Description 给定一个栈(初始为空,元素类型为整数,且小于等于100),只 ...
- CODEVS 3139 栈练习3
3139 栈练习3 时间限制: 2 s 空间限制: 128000 KB 题目等级 : 黄金 Gold 题目描述 Description 比起第一题,本题加了另外一个操作,访问栈顶元素(编号3,保 ...
- CODEVS 3137 栈练习1
3137 栈练习1 时间限制: 1 s 空间限制: 128000 KB 题目等级 : 黄金 Gold 题目描述 Description 给定一个栈(初始为空,元素类型为整数,且小于等于100),只 ...
- codevs 1170 双栈排序
/* 好题啊 好题啊 而然还是看了一眼题解啊 有那么一点思路 但是离写出代码还很远 考虑必须分开放倒两个栈里的情况 即存在i<j<k 有 a[k]<a[i]<a[j] 这里RM ...
- [PHP]全国省市区信息,mysql数据库记录
下载地址: https://files.cnblogs.com/files/wukong1688/T_Area.zip 或者也可以复制如下内容: CREATE TABLE IF NOT EXISTS ...
- jnhs中国的省市县区邮编坐标mysql数据表
https://blog.csdn.net/sln2432713617/article/details/79412896 -- 1.之前项目中需要全国的省市区数据,在网上找了很多,发现数据要么不全,要 ...
- T3139 栈练习3 codevs
http://codevs.cn/problem/3139/ 题目描述 Description 比起第一题,本题加了另外一个操作,访问栈顶元素(编号3,保证访问栈顶元素时或出栈时栈不为空),现在给出这 ...
- T3137 栈练习1 codevs
codevs.cn/problem/3137 题目描述 Description 给定一个栈(初始为空,元素类型为整数,且小于等于100),只有两个操作:入栈和出栈.先给出这些操作,请输出最终栈的栈顶元 ...
- 数据结构--栈 codevs 1107 等价表达式
codevs 1107 等价表达式 2005年NOIP全国联赛提高组 时间限制: 1 s 空间限制: 128000 KB 题目等级 : 钻石 Diamond 题目描述 Descripti ...
随机推荐
- 批处理文件将多台连接的手机安装同一个APP
:adb devices > C:\Users\aaminaxu\Desktop\a.txt :1.首先获取连接到电脑的手机的设备信息将其保存到C盘的a.txt文件中::2.将保存的txt文件中 ...
- Chapter02 第四节 函数
2.4 函数 2.4.1 有返回值的函数 函数定义.函数原型.函数调用 函数定义即定义一个函数:形如 :double sqrt(double x){····} 函数调用即调用这个函数,形如 :doub ...
- 网络编程.TCP分块接收数据(AIO)(IOCP)
1.前提:每次投递的接收缓冲区 在它返回后 就不再用它进行2次投递了 于是 接收缓冲区 在返回的时候,数据都是 从接收缓冲区的偏移[0]处开始填充的,且 接收缓冲区 可能被填满 也可能未被填满. 1. ...
- 三、Zabbix-zabbix server部署-zabbix server
LNMP基础环境准备完成,进行zabbix server部署参考官方文档: [https://www.zabbix.com/documentation/3.4/zh/manual/installati ...
- P1540翻译机器
这是2010提高组第一题,是一个使用队列的模拟题(然而洛谷很多大佬用了最短路) 这道题首先要判断内存中是否已有解释(因为题目已经说了长度很小,所以可以用桶排序),没有的话便去外存找,找到后,存到内存的 ...
- shell学习笔记3---shell变量
Shell变量的定义.赋值和删除 脚本语言在定义变量时通常不需要指明类型,直接赋值就可以,Shell 变量也遵循这个规则. 在 Bash shell 中,每一个变量的值都是字符串,无论你给变量赋值时有 ...
- Python数据基础类型-新建列表
1,遍历列表 遍历列表的所有元素,对每个元素执行相同的操作.可使用for循环 magicians = ['alice','david','carolina'] for magician in magi ...
- python如何安装第三方模块
系统 Windows 10 方法一,通过在命令行中通过pip命令安装 1. 打开cmd 2. 输入命令:pip install 目标模块的名字,例如, pip install numpy 3. 按回车 ...
- Scrapy 教程(二)-操作流程
scrapy 是个爬虫框架,是由python编写的,用法类似 django 框架. 创建工程 在开始爬虫之前,先创建工程 scrapy startproject projectname 目录结构如下图 ...
- C++------流星雨
用C++实现模拟数字.字母流星雨,其主要用到链表.win32编程基础. demo实例: // DataRainDemo.cpp : 定义应用程序的入口点. // #include "stda ...