codevs 3185-3187 队列练习x
给定一个队列(初始为空),只有两种操作入队和出队,现给出这些操作请输出最终的队头元素。 操作解释:1表示入队,2表示出队
N(操作个数)
N个操作(如果是入队则后面还会有一个入队元素)
具体见样例(输入保证队空时不会出队)
输出描述
Output Description
最终队头元素,若最终队空,输出”impossible!”(不含引号)
样例输入
Sample Input
3
1 2
1 9
2
样例输出
Sample Output
9
数据范围及提示
Data Size & Hint
对于100%的数据 N≤1000 元素均为正整数且小于等于100
分类标签 Tags 点此展开
#include<cstdio>
#include<iostream> using namespace std; int n,top=,s=,h=;
int a[]; void pop()
{
int v;
scanf("%d",&v);
a[h++]=v;
} void push()
{
top++;
} int main()
{
int p;
scanf("%d",&n);
for(int i=;i<=n;++i)
{
scanf("%d",&p);
if(p==)
{
s++;
pop();
}
if(p==)
{
s--;
push();
}
}
if(s<=)
{
printf("impossible!");
}
else printf("%d",a[top]);
return ;
}
(此题与队列练习1相比改了2处:1加强了数据 2不保证队空时不会出队)
给定一个队列(初始为空),只有两种操作入队和出队,现给出这些操作请
输出最终的队头元素。 操作解释:1表示入队,2表示出队
输入描述
Input Description
N(操作个数)
N个操作(如果是入队则后面还会有一个入队元素)
具体见样例(输入保证队空时不会出队)
输出描述
Output Description
最终队头元素,若最终队空,或队空时有出队操作,输出”impossible!”(不含引号)
样例输入
Sample Input
3
1 2
2
2
样例输出
Sample Output
impossible!
数据范围及提示
Data Size & Hint
对于100%的数据 N≤100000 元素均为正整数且小于等于10^8
分类标签
Tags
点此展开
#include<cstdio>
#include<iostream> using namespace std; int n,top=0,s=0,h=0;
int a[111111];
bool b=0; void pop()
{
int v;
scanf("%d",&v);
a[h++]=v;
} void push()
{
if(top<h)
top++;
else b=1;
} int main()
{
int p;
scanf("%d",&n);
for(int i=1;i<=n;++i)
{
scanf("%d",&p);
if(p==1)
{
s++;
pop();
}
if(p==2)
{
s--;
push();
if(b)
{
printf("impossible!");
return 0;
}
} }
if(s<=0)
{
printf("impossible!");
}
else printf("%d",a[top]);
return 0;
}
3187x
比起第一题,本题加了另外一个操作,访问队头元素(编号3,保证访问队头元素时或出队时队不为空),现在给出这N此操作,输出结果。
N
N次操作(1入队 2出队 3访问队头)
输出描述
Output Description
K行(K为输入中询问的个数)每次的结果
样例输入
Sample Input
6
1 7
3
2
1 9
1 7
3
样例输出
Sample Output
7
9
数据范围及提示
Data Size & Hint
对于50%的数据 N≤1000 入队元素≤200
对于100%的数据 N≤100000入队元素均为正整数且小于等于10^4
分类标签
Tags
点此展开
#include<cstdio>
#include<iostream> using namespace std; int n,top=,h=;
int a[]; void pop()
{
int v;
scanf("%d",&v);
a[h]=v;h++;
if(h==)
{
a[top]=v;
}
} void push()
{
top++;
} int main()
{
int p;
scanf("%d",&n);
for(int i=;i<=n;++i)
{
scanf("%d",&p);
if(p==)
{
pop();
}
if(p==)
{
push();
}
if(p==)
{
printf("%d\n",a[top]);
}
}
return ;
}
codevs 3185-3187 队列练习x的更多相关文章
- codevs 3185 队列练习1
题目描述 Description 给定一个队列(初始为空),只有两种操作入队和出队,现给出这些操作请输出最终的队头元素. 操作解释:1表示入队,2表示出队 输入描述 Input Description ...
- codevs 3185 队列练习 1
时间限制: 1 s 空间限制: 128000 KB 题目等级 : 黄金 Gold 题目描述 Description 给定一个队列(初始为空),只有两种操作入队和出队,现给出这些操作请输出最 ...
- Codevs 队列练习 合并版
3185 队列练习 1 时间限制: 1 s 空间限制: 128000 KB 题目等级 : 黄金 Gold 题目描述 Description 给定一个队列(初始为空),只有两种操作入队和出队,现给出这 ...
- T3185 队列练习1 codevs
http://codevs.cn/problem/3185/ 题目描述 Description 给定一个队列(初始为空),只有两种操作入队和出队,现给出这些操作请输出最终的队头元素. 操作解释:1表示 ...
- DP+单调队列 codevs 1748 瑰丽华尔兹(还不是很懂具体的代码实现)
codevs 1748 瑰丽华尔兹 2005年NOI全国竞赛 时间限制: 1 s 空间限制: 128000 KB 题目等级 : 大师 Master 题解 题目描述 Descripti ...
- T3187 队列练习3 codevs
http://codevs.cn/problem/3187/ 题目描述 Description 比起第一题,本题加了另外一个操作,访问队头元素(编号3,保证访问队头元素时或出队时队不为空),现在给出这 ...
- T3186 队列练习2 codevs
http://codevs.cn/problem/3186/ 题目描述 Description (此题与队列练习1相比改了2处:1加强了数据 2不保证队空时不会出队)给定一个队列(初始为空),只有两种 ...
- codevs 3186 队列练习2
3186 队列练习 2 时间限制: 1 s 空间限制: 128000 KB 题目等级 : 黄金 Gold 题解 题目描述 Description (此题与队列练习1相比改了2处:1加 ...
- Codevs 4373 窗口(线段树 单调队列 st表)
4373 窗口 时间限制: 1 s 空间限制: 256000 KB 题目等级 : 黄金 Gold 题目描述 Description 给你一个长度为N的数组,一个长为K的滑动的窗体从最左移至最右端,你只 ...
随机推荐
- 【sublime Text】sublime Text3安装可以使xml格式化的插件
应该有机会 ,会碰到需要格式化xml文件的情况. 例如,修改word转化的xml文件之后再将修改之后的xml文件转化为word文件. 但是,word另存的xml文件是没有格式的一片: 那怎么格式化 这 ...
- 怎样使用 v-if 实现 html 元素的显示 / 隐藏?
1. 首先, 指令后的引号内是可以写 js 表达式的, 这点很重要. v-if 的用法很简单, 只需要给 v-if = " " 的引号内放一个 布尔值 即可. 注意: v-if 的 ...
- qt 静态编译配置项
configure -confirm-license -opensource -platform win32-msvc2013 -debug-and-release -static -prefix & ...
- Cannot resolve the collation conflict between "SQL_Latin1_General_CP1_CI_AS" and "Chinese_PRC_CI_AI" in the equal to operation.
Executed as user: NT AUTHORITY\SYSTEM. Cannot resolve the collation conflict between "Chinese_P ...
- 小白学 Python 爬虫(25):爬取股票信息
人生苦短,我用 Python 前文传送门: 小白学 Python 爬虫(1):开篇 小白学 Python 爬虫(2):前置准备(一)基本类库的安装 小白学 Python 爬虫(3):前置准备(二)Li ...
- java三大框架——Struts + Hibernate + Spring
Struts主要负责表示层的显示 Spring利用它的IOC和AOP来处理控制业务(负责对数据库的操作) Hibernate主要是数据持久化到数据库 再用jsp的servlet做网页开发的时候有个 w ...
- linux(centos7) 查看磁盘空间大小
命令: df -hl 1 显示: 文件系统 容量 已用 可用 已用% 挂载点 Filesystem Size Used Avail Use% Mounted on /dev/hda2 45G 19G ...
- Python学习计划-首篇
概述 Python语言这几年的热度一直持续上升,有多火也不用我再介绍了,光从近几年编程语言排行榜的上升热度就能看出,因此我也计划学习一下python语言,并且将每次的学习收获记录下来.一方面是记录下来 ...
- centos nginx https 配置
1,如果想配置一个域名到指定目录咋弄呢?下面这个 server { listen ; server_name 这里换成你的域名,例如baidu.com; set $root_path '/home/w ...
- LNMP安装与配置之Python3
环境 我们是在CentOS7下安装python3,但CentOS已经默认安装了Python2,而 Yum 等工具依赖原来的Python2.所以我们需要稍作配置让Python2与Python3可以共存. ...