3139 栈练习3

3139 栈练习3

时间限制: 2 s

空间限制: 128000 KB

题目等级 : 黄金 Gold

题解

查看运行结果

题目描述 Description

比起第一题,本题加了另外一个操作,访问栈顶元素(编号3,保证访问栈顶元素时或出栈时栈不为空),现在给出这N此操作,输出结果。

输入描述 Input Description

N

N次操作(1入栈 2出栈 3访问栈顶)

输出描述 Output Description

K行(K为输入中询问的个数)每次的结果

样例输入 Sample Input

6

1  7

3

2

1  9

1  7

3

样例输出 Sample Output

7

7

数据范围及提示 Data Size & Hint

对于50%的数据 N≤1000 入栈元素≤200

对于100%的数据 N≤100000入栈元素均为正整数且小于等于10^4

分类标签 Tags 点此展开

 1 #include<iostream>
 2 using namespace std;
 3 int stack[100000001];
 4 int top=1;
 5 int main()
 6 {
 7     int n;
 8     cin>>n;
 9     for(int i=1;i<=n;i++)
10     {
11         int a;
12         cin>>a;
13         if(a==2)
14         {
15             if(top==1)
16             {
17                 cout<<"impossible!";
18                 return 0;
19             }
20             else
21             {
22                 top--;
23             }
24         }
25         else if(a==1)
26         {
27             int b;
28             cin>>b;
29             stack[top]=b;
30             top++;
31         }
32         else if(a==3)
33         {
34             cout<<stack[top-1]<<endl;
35         }
36     }
37 /*    if(top==1)
38     {
39         cout<<"impossible!";
40     }
41     else
42     {
43         cout<<stack[top-1];
44     }*/
45     return 0;
46 }
时间: 2024-10-18 08:48:21

3139 栈练习3的相关文章

codevs 3139 栈练习3

3139 栈练习3 提交地址:http://codevs.cn/problem/3139/ 时间限制: 2 s 空间限制: 128000 KB 题目等级 : 黄金 Gold 题目描述 Description 比起第一题,本题加了另外一个操作,访问栈顶元素(编号3,保证访问栈顶元素时或出栈时栈不为空),现在给出这N此操作,输出结果. 输入描述 Input Description N N次操作(1入栈 2出栈 3访问栈顶) 输出描述 Output Description K行(K为输入中询问的个数)

栈 练习 Codevs 3137 3138 3139

3137 栈练习1 时间限制: 1 s  空间限制: 128000 KB  题目等级 : 黄金 Gold 题目描述 Description 给定一个栈(初始为空,元素类型为整数,且小于等于100),只有两个操作:入栈和出栈.先给出这些操作,请输出最终栈的栈顶元素.  操作解释:1表示入栈,2表示出栈 输入描述 Input Description N(操作个数) N个操作(如果是入栈则后面还会有一个入栈元素) 具体见样例(输入保证栈空时不会出栈) 输出描述 Output Description 最

模拟算法练习

codevs  1.1507 酒厂选址 1 #define N 10010 2 #include<iostream> 3 using namespace std; 4 #include<cstdio> 5 #include<cstring> 6 int sum[N],z[N],a[N]; 7 long long minn=-1; 8 int n; 9 int read() 10 { 11 int ans=0;char s; 12 s=getchar(); 13 whil

七方件业金离以提领前群约会ODjdidtlwfWv

为了从不同环节,尤其与广大使用人群直接关系的环节反映质量状况,对共享自行车投放点.运营仓库.生产企业等不同环节的产品抽查,覆盖了共享自行车从成品出厂到待投放的关键环节. 该负责人称,根据新车投放情况,结合共享自行车行业市场占有分布特点,本次重点抽查了摩拜.ofo.Hellobike三个品牌的产品,占本次抽查批次总数的83.3%.其中,在天津.无锡.武汉.广州.深圳.东莞6个城市抽查了9批次摩拜产品,占产品抽查批次总数的37.5%,抽查批次合格率88.9%,抽查不合格的1批次产品为待投放于广州市的

【STL】栈stack

栈stack 头文件与定义 #include<stack> stack<long long>mystack;    //以下以mystack为例 用法 1.将元素a入栈:mystack.push(a); 2.将栈顶元素弹栈/出栈:mystack.pop(); 3.判断栈是否为空:mystack.empty() 4.栈的长度:cout<<stack.size(); 5.访问栈顶元素:cout<<stack.top(); 注意事项 1.在出栈或者访问栈顶元素之前

“全栈”工程师 请不要随意去做

今天我来给大家说说 "全栈工程师" 的事儿. 写这篇文的背景原因: 很简单就是最近越来越多的人想做[全栈工程师],他们的目标就是全栈,他们才入行短短1-2年,甚至刚从培训班出来:我的目标是做全栈,我啥都要学会,啥都会写,这样我就是大牛了,可以挣大钱,就算创业,我也不用招那么多人,一个人搞定一个产品,融资上市 ,CEO白富美,balabala... 我给他的回复是: 去你xx的,你连JS 数组和对象用法都搞不清,抄几个效果,看几个视频教程摸索摸索就要做万能人了? "全栈&quo

15.1-全栈Java笔记:Java事件模型是什么?事件控制的过程有哪几步??

应用前边两节上一章节的内容,大家可以完成一个简单的界面,但是没有任何的功能,界面完全是静态的,如果要实现具体功能的话,必须要学习事件模型. 事件模型简介及常见事件模型 对于采用了图形用户界面的程序来说,事件控制是非常重要的. 一个源(事件源)产生一个事件并把它(事件对象)送到一个或多个监听器那里,监听器只是简单地等待,直到它收到一个事件,一旦事件被接收,监听器将处理这些事件. 一个事件源必须注册监听器以便监听器可以接收关于一个特定事件的通知. 每种类型的事件都有其自己的注册方法,一般形式为: v

链栈的实现

链栈即链式栈,也就是说我们不用再考虑空间的大小,可随心所欲的进行数据的插入/删除了.和顺序栈一样,仍然要保持其stack的特性,只在一端进行插入和删除,后进先出. 示例代码: #ifndef _LINKSTACK_H #define _LINKSTACK_H typedef int ElemType; typedef int Status; typedef struct linkStack { ElemType data; struct linkStack * top; }linkStack;

95后实习生的远程办公体验(asp.net mvc\C#技术栈)

这个月我们做了一件别人看起来很疯狂的事情,就是让一批95后的实习生实行远程办公,效果还不错,于是写此文总结一下. 其实认真算算,我自己的远程工作经验有十年了吧,在北京工作的时候天气不好就申请在家办公,在硅谷的时候每周有三天在家办公,两天去办公室办公.所以我也算得上是远程办公的老司机了吧. 不过,我之前都是对有多年工作经验的老司机才实行远程办公,还从来没有对还未毕业的实习生实行过.老实说,不敢啊,也不放心,况且我在cnblogs博客园呆了十年,还真没见过对还未毕业的实习生实行过远程办公的. 那为什