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 ...
随机推荐
- 解析jmeter阶梯加压与请求的计算
用百度做例子 我们设置阶梯加压线程组的请求参数,如下图 上图表示 1:每隔2秒钟,会在1秒内启动5个线程 2:每次线程加载之后都会运行2s然后开始下一次线程加载 3:最终会加载50个线程并持续运行30 ...
- 剑指offer--day12
1.1 题目:复杂链表的复制:输入一个复杂链表(每个节点中有节点值,以及两个指针,一个指向下一个节点,另一个特殊指针指向任意一个节点),返回结果为复制后复杂链表的head.(注意,输出结果中请不要返回 ...
- 【Qt开发】几个傻不拉几关于char*和const char*的不兼容问题
1. string转const char* string s ="abc";constchar* c_s = s.c_str(); 2. const char*转string ...
- 深入理解java:2.1. volatile的使用及其原理
引言 在多线程并发编程中synchronized和Volatile都扮演着重要的角色,Volatile是轻量级的synchronized,它在多处理器开发中保证了共享变量的“可见性”. 可见性的意思是 ...
- DOM练习(邓邓版)
先来图片: 今天直接粘代码: 下面是html: <h4>01.图片切换</h4> <img width = "100" src = "../ ...
- 安装配置php及fastadmin
FastAdmin教程之准备运行环境 一.Node.js http://nodejs.cn/download/ https://npm.taobao.org/mirrors/node/v8.4.0 ...
- java中关键字final,finally,finalize的区别
-final:作为修饰符关键字,有三种用法: 1,如果一个类被声明为final,则意味着它不能被继承. 2,将变量声明为final,则表示它是一个常量,也就是保证它在使用过程中不被修改,被final修 ...
- linux NFS 实例
为了证明是 Allentunsgroup 组起的作用而非用户 [root@NFS_Client ~]# useradd scott1 [root@NFS_Client ~]# passwd scott ...
- MongoDB入门_MongoDB安装与配置
MongoDB运行环境 MongoDB环境:CentOS-6.7-i386 MongoDB版本:MongoDB 2.6.5 ssh工具:xshell 文本编辑工具:vim与editplus++ 编译M ...
- [转载]NOR和NAND 存储器的联系与区别
转载了,对于我理解两种Flash起到了帮助,希望博主继续再接再厉,更新博文 原文地址:存储器的联系与区别">NOR和NAND 存储器的联系与区别作者:暴走的工程师 一.类型理解 ...