题目链接:https://vjudge.net/problem/UVA-514

题目大意:

有A,B,C三个火车停靠点,火车最初停在A站,给你一个序列,问你能不能通过中转站C到达B站,火车从A站进入到C站以后不能再返回A站,从C站出到B站以后不能再进入C站。

分析:

把中转站C站看作一个栈。

暑假集训的时候对栈的理解不够深刻,没有充分理解这个题目的意思,现在重写!

要判断是否能够实现,最主要的是判断条件(下面代码中红色加粗代码),想要成立就要保证要出栈数据在栈中的位置必须在栈顶,用5 4 1 2 3举例,当执行绿色部分代码时候的执行顺序是1 2 3 4 5一直进栈,最后一个进栈的元素5满足while的条件出栈,5出栈了栈顶元素就是4,4满足条件出栈,此时栈顶元素为3,但是栈非空,所以答案为“No”;

AC代码:

#include<iostream>
#include<stack>
using namespace std;
int main()
{
int a[],t,flag,i,j;
while (cin>>t&&t)
{
flag=;
stack <int>s;
while (cin>>a[]&&a[])
{
for (int i=;i<t;i++)
cin>>a[i];
for (i=1,j=0;i<=t;i++)
{
s.push(i);
while (s.top()==a[j])
{
if (!s.empty())
s.pop();
j++;
if (s.empty())
break;
}
}
if (j==t)
cout << "Yes" << endl;
else
cout << "No" << endl;
}
cout << endl;
} return ;
}

Rails (栈)的更多相关文章

  1. E - Rails (栈)

    E - Rails Time Limit:3000MS     Memory Limit:0KB     64bit IO Format:%lld & %llu Description The ...

  2. POJ 1363 Rails(栈)

    思路:将出车站的顺序存入数组train,由于入车站的顺序是固定的,为1~N,所以用P表示进站的车,初始为1. 接下来举例说明吧: 原来入站顺序:    1 2 3 4 5 读入的出战顺序: 3 4 2 ...

  3. UVA-514 Rails (栈)

      Rails  There is a famous railway station in PopPush City. Country there is incredibly hilly. The s ...

  4. UVa514 Rails (栈)

    题意:一列有n节车厢的火车按顺序进站,给你一个出站顺序,问你该火车的车厢能否以该顺序出站? 分析:出站的车厢满足后进先出的关系,所以我们考虑采用栈s 假设车厢一共有n节,n = 5: 进站顺序A:1 ...

  5. Rails 5 Test Prescriptions 第3章Test-Driven Rails

    本章,你将扩大你的模型测试,测试整个Rails栈的逻辑(从请求到回复,使用端到端测试). 使用Capybara来帮助写end-to-end 测试. 好的测试风格,包括端到端测试,大量目标明确的单元测试 ...

  6. poj 1363 Rails in PopPush City &&【求堆栈中合法出栈顺序次数】

    问题如下: 问题 B: Rails 时间限制: Sec 内存限制: MB 提交: 解决: [提交][状态][讨论版] 题目描述 There is a famous railway station in ...

  7. UVa 514 Rails(经典栈)

     Rails  There is a famous railway station in PopPush City. Country there is incredibly hilly. The st ...

  8. 从 rails 窥探 web 全栈开发(零)

    从 rails 窥探 web 全栈开发(零) 本文将讲述在学习之前几个必须要知道的概念,这些词汇在 rails 中都会出现. 本文前置条件:安装好 Ruby. 从 rails 窥探 web 全栈开发( ...

  9. UVa 514 Rails(栈的应用)

    题目链接: https://cn.vjudge.net/problem/UVA-514 /* 问题 输入猜测出栈顺序,如果可能输出Yes,否则输出No 解题思路 貌似没有直接可以判定的方法,紫书上给出 ...

  10. 【紫书】Rails UVA - 514 栈

    题意:判断出栈顺序是否合法 题解:两个指针,A指向入栈序列,B指向出栈. 的分三种情况:if     1.A==B :直接入栈加出栈即可A++,B++ else 2.和栈顶相同,直接出栈A==stac ...

随机推荐

  1. springboot打包,jar包可以以service方式启动

    <build> <plugins> <plugin> <groupId>org.springframework.boot</groupId> ...

  2. 关于Linux下Oracle安装后启动的问题

    1.首先,切换成oracle用户,启动监听服务.(中间的横杠必须加上,不然会出现command not found 的错误) 命令1:su  -  oralce 命令2:lsnrctl start 参 ...

  3. views层回顾

    目录 views层回顾 jsonResponse 2 大文件上传 3. cbv和fbv源码分析 4settings.py源码分析 5模板传值{{}} {%%} 6. 过滤器和标签和自定义 7模板的继承 ...

  4. 20190221 beautiful soup 入门

    beautiful soup 入门 Beautiful Soup 是 python 的一个库,最主要的功能是从网页抓取数据. Beautiful Soup 自动将输入文档转换为 Unicode 编码, ...

  5. 892B. Wrath#愤怒的连环杀人事件(cin/cout的加速)

    题目出处:http://codeforces.com/problemset/problem/892/B 题目大意:一队人同时举刀捅死前面一些人后还活着几个 #include<iostream&g ...

  6. mybatis: Invalid bound statement (not found)即使调试源码也很难注意的坑

    需要改成 注意: 这个是不能一次性建立多级目录的 这个才是ok的

  7. Metasploit详解

    title date tags layout Metasploit 详解 2018-09-25 Metasploit post 一.名词解释 exploit 测试者利用它来攻击一个系统,程序,或服务, ...

  8. moco jar包下载

    http://repo1.maven.org/maven2/com/github/dreamhead/moco-runner/0.11.0/ 选择moco-runner-0.11.0-standalo ...

  9. 自定义字段从BOM带入生产用料清单

    自定义字段从BOM带入生产用料清单

  10. 吴裕雄--天生自然python学习笔记:python 文件批量处理

    Python 在文件处理方面表现突出,关于文件的处理 也是很多人经常用到的功能. 对 Python 的文件处理的技巧进行综合应用,比如把大量文件 的复制.按指定的文件名进行保存.找出重复的照片.将 所 ...