UVa514 Rails (栈)
题意:一列有n节车厢的火车按顺序进站,给你一个出站顺序,问你该火车的车厢能否以该顺序出站?
分析:出站的车厢满足后进先出的关系,所以我们考虑采用栈s
假设车厢一共有n节,n = 5;
进站顺序A:1 2 3 4 5
出站顺序B/target: 2 3 4 5 1
如果进站的车厢没有立马出站,则将该车厢入栈s.push(A++)
判断栈里面车厢的顺序是否和出站顺序一致 s.top()== target[B]
#include<cstdio>
#include<stack>
using namespace std;
int main()
{
int n,target[];
stack<int>s;
while(~scanf("%d",&n)&&n)
{
while(){
int flag = ;
for(int i=;i<=n;i++)
{
scanf("%d",&target[i]);
if(target[i] == )
{
flag = -;
break;
}
}
if(flag == -)
{
printf("\n");
break;
}
int A=,B=;
while(B <= n)
{
if(A == target[B]){A++;B++;}
else if(!s.empty()&&s.top()==target[B]){B++;s.pop();}
else if(A <= n) s.push(A++);
else {flag =-; break;}
}
if(flag == -)
printf("No\n");
else
printf("Yes\n");
}
}
return ;
}
UVa514 Rails (栈)的更多相关文章
- UVA-514 Rails (栈)
Rails There is a famous railway station in PopPush City. Country there is incredibly hilly. The s ...
- E - Rails (栈)
E - Rails Time Limit:3000MS Memory Limit:0KB 64bit IO Format:%lld & %llu Description The ...
- POJ 1363 Rails(栈)
思路:将出车站的顺序存入数组train,由于入车站的顺序是固定的,为1~N,所以用P表示进站的车,初始为1. 接下来举例说明吧: 原来入站顺序: 1 2 3 4 5 读入的出战顺序: 3 4 2 ...
- UVA514 Rails
铁轨 PopPush城市有一座著名的火车站.这个国家到处都是丘陵.而这个火车站是建于上一个世纪.不幸的是,那时的资金有限.所以只能建立起一条路面铁轨.而且,这导致这个火车站在同一个时刻只能一个轨道投 ...
- 6_2 铁轨(UVa514)<栈>
在一个叫「堆叠市」的城市中有一个有名的火车站.由于地形限制以及经费的关系,火车站及唯一的铁路的样子如下图: 现在火车从A方向来,预定从B方向离开.火车共有N节车厢(N <=1000),并且各车厢 ...
- 【UVa-514】铁轨——栈的学习
UVa514 Rails(铁轨) 题目:铁轨 题目链接: UVa514链接 题目描述: 某城市有一个火车站,有n节车厢从A方向驶入车站,按进站的顺序编号为1-n.你的任务是判断是否能让它们按照某种特定 ...
- Rails 5 Test Prescriptions 第3章Test-Driven Rails
本章,你将扩大你的模型测试,测试整个Rails栈的逻辑(从请求到回复,使用端到端测试). 使用Capybara来帮助写end-to-end 测试. 好的测试风格,包括端到端测试,大量目标明确的单元测试 ...
- SDWC补题计划
2018的寒假去了SD的冬令营,因为一班二班难度悬殊,对我很不友好,几乎什么也没学会,但是我把两个班的课件都存了下来,现在慢慢把两个班的例题以及课后题都补一补(毕竟冬令营的钱不能白花). 这些题目横跨 ...
- poj 1363 Rails in PopPush City &&【求堆栈中合法出栈顺序次数】
问题如下: 问题 B: Rails 时间限制: Sec 内存限制: MB 提交: 解决: [提交][状态][讨论版] 题目描述 There is a famous railway station in ...
随机推荐
- SpeedReader for Mac(快速阅读器)v1.6免费版
SpeedReader for Mac是一款运行在Mac平台上的阅读软件,通过这款软件就可以自行调整阅读速度.通过SpeedReader Mac版用户可以将想要阅读的内容拖入到软件中,调整速度和字体, ...
- 通过企业微信API接口发送消息
最近给公司测试组内部开发一个记账小工具,当账目出现问题的时候需要发送消息通知大家,前期主要采用的QQ发送通知消息,但是有一天突然无法连接到QQ服务器,运维的同学建议采用微信的方式对接然后进行告警,所以 ...
- MySQL is running but PID file could not be found
在Linux 中,当你启动或者重启 MySQL 时,报 关于 PID file 的错误 解决方法 第一步:找到 mysql 中 data 目录下的 mysql-bin.index 文件,然后删除 ...
- python字符串截取、查找、分割
Python 截取字符串使用 变量[头下标:尾下标],就可以截取相应的字符串,其中下标是从0开始算起,可以是正数或负数,下标可以为空表示取到头或尾. # 例1:字符串截取 str = '1234567 ...
- 没有可用软件包 libgdiplus 解决方法
1.下载 epel-release-7-11.noarch.rpm wget http://dl.fedoraproject.org/pub/epel/7/x86_64/Packages/e/epel ...
- android okHttp 无线程Post请求
1.导入okhttp-2.7.5.jar和okio-1.11.0.jar包 2.Post无线程请求 public void getDataPost(){ String s = "{\&quo ...
- Asynchronous programming in javascript
Javascript是单线程的,因此异步编程对其尤为重要. ES 6以前: * 回调函数* 事件监听(事件发布/订阅)* Promise对象 ES 6: * Generator函数(协程corouti ...
- 2018秋寒假作业6—PTA编程总结3
1.实验代码 7-1 抓老鼠啊~亏了还是赚了? (20 分) 某地老鼠成灾,现悬赏抓老鼠,每抓到一只奖励10元,于是开始跟老鼠斗智斗勇:每天在墙角可选择以下三个操作:放置一个带有一块奶酪的捕鼠夹(T) ...
- Linux常见企业面试题
1:只查看test.txt (100行)文件中第20行到30行的数据(企业常见面试题) 答: seq (序列) 第一种方法:head -30 test1.txt | tail -11 第二种方法:se ...
- 对Unity一个Shader编译Bug的分析(Unrecognized sampler 'samplerunity_lightmap)
写在前面 Unity的用户量越来越大,越来越有钱,这几年摊子也铺的越来越大,所以各个版本总是有很多Bug.对于一些Bug官方在ReleaseNote里的说明是很不详细的,而对于一些渲染相关的Bug,有 ...