UVa514 Rails(铁轨)

题目:铁轨
题目链接:UVa514链接
题目描述:
某城市有一个火车站,有n节车厢从A方向驶入车站,按进站的顺序编号为1-n.你的任务是判断是否能让它们按照某种特定的顺序进入B方向的铁轨并驶入车站。例如,出栈顺序(5 4 1 2 3)是不可能的,但是(5 4 3 2 1)是可能的。
题目分析:
为了重组车厢,借助中转站,对于每个车厢,一旦从A移入C就不能回到A了,一旦从C移入B,就不能回到C了,意思就是A->C和C->B。而且在中转站C中,车厢符合后进先出的原则。故这里可以看做为一个栈。

<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<
参考代码:

//铁轨.cpp
#include <iostream>
#include <stack>
using namespace std;const int MAXN = 1000 + 10;
int n, target[MAXN];int main()
{while(cin >> n && n){for(int i = 1; i <= n; i++){cin >> target[i];}stack<int> s;int A = 1,B = 1;int ok = 1;while(B <= n){if(A == target[B]){A++;B++;}else if(!s.empty() && s.top() == target[B]){s.pop();B++;}else if(A <= n)s.push(A++);else{ok = 0;break;}}cout << (ok ? "Yes" : "No" )<<endl; //注意这里必须括号括起来}return 0;
}

UVa514 Rails(铁轨)相关推荐

  1. UVA514 Rails

    铁轨 Rails 题目描述 某城市有一个火车站,铁轨铺设如图.有n节车厢从A方向驶入车站,按进站的顺序编号为1-n.你的任务是判断是否能让他们按照某种特定的顺序进入B方向的铁轨并驶出车站.例如,出栈顺 ...

  2. 514 - Rails

    Rails PS:因为该题排版较麻烦,这里给出OJ网址:UVa514 - Rails 某城市有一个火车站,铁轨铺设如图6-1所示.有n节车厢从A方向驶入车站,按进站顺序编号为1-n.你的任务是判断是否 ...

  3. Uva 514 Rails

    原文地址 Uva 514 Rails 铁轨 PopPush城市有一座著名的火车站.这个国家到处都是丘陵.而这个火车站是建于上一个世纪.不幸的是,那时的资金有限.所以只能建立起一条路面铁轨.而且,这导致 ...

  4. 《算法竞赛入门经典(第2版)》——学习记录

    前言:   这里主要记录本人在学习紫书过程中充分理解过的题目的AC代码,便于以后回顾时查找代码和思路,毕竟看别人的真的有点难懂.此外,本书甚至是本书之外的相关知识学习也可能在此留下记录.   作为一只 ...

  5. 铁轨(Rails) Uva514

    题目 某个城市右一个火车站,铁轨铺设如图所示,有 n n n节车厢从 A A A方向驶入车站,并且按照进站顺序编号为 1 1 1~ n n n.你的任务是判断是否能让它们按照某种特定的顺序进入 B B ...

  6. 例题6-2 铁轨(Rails, ACM/ICPC CERC 1997, UVa 514)

    栈应用 例题6-2 铁轨(Rails, ACM/ICPC CERC 1997, UVa 514) 错解 1.每次要把栈清空 2.不能用空的栈(栈顶)去比较 #include<iostream&g ...

  7. UVa514 铁轨 C++

    UVa514 铁轨 C++ 题解思路 用到数据类型:栈 因为满足先入后出 重组一共三种情况 1.原本的和重组的相同,直接出栈 2.栈顶和该出栈的相同,栈顶出栈 3.既不直接相同,栈顶也不相同,并且原本 ...

  8. 6_2 铁轨(UVa514)栈

    在一个叫「堆叠市」的城市中有一个有名的火车站.由于地形限制以及经费的关系,火车站及唯一的铁路的样子如下图: 现在火车从A方向来,预定从B方向离开.火车共有N节车厢(N <=1000),并且各车厢 ...

  9. 19行代码AC——例题 6-2 铁轨(Rails, UVa 514)——解题报告

    励志用尽量少的代码做高效的表达. 提交(题目)链接→UVa-514 此题的本质是:给出"入栈顺序",判断给定序列是否可以出栈. 有点像这种题: 因此思路也类似: 思路: 数组存储列 ...

最新文章

  1. 如何使网站的右键失效
  2. 这年头,机器翻译都会通过文字脑补画面了 | NAACL 2021
  3. SVN 版本服务器搭配全过程详解(含服务端、客户端)
  4. jenkins运行日志时间与linux,持续集成之Jenkins结合脚本实现代码自动化部署及一键回滚至上一版本...
  5. chrome android 远程调试,chrome 远程调试
  6. struts2--文件上传大小
  7. php 检测网址是否有效
  8. python excelwriter保存路径_太赞!Python和Excel终于可以互通了
  9. 面试4轮字节Java研发岗,最终拿下Offer(原题复盘)
  10. inceptionv 1-4
  11. 获取OlapConnection连接
  12. 3.使用SqlCommand执行SQL语句
  13. 2019上半年软考试题(转)
  14. RecyclerView框架——BRVAH3.x使用指南
  15. 南开大学校园邮箱pop3地址
  16. Python3中sys.stdin用法
  17. 怎么识别手写的文字?办公常备软件说明
  18. 王者荣耀怎么投屏到电脑屏幕上
  19. 按条件隐藏bootstrapTable某一列
  20. 给大家推荐一个免费好用的ico图标、png、icns下载地址!

热门文章

  1. Hibernate快速入门(2)
  2. linux上使用scp命令进行上传和下载
  3. 四柱八字大全 php,四柱八字查询表 免费四柱八字查询
  4. NLP相关知识点问答总结(三)
  5. 《灵飞经》3·印神无双 第十三章 剑奕星斗 2
  6. Android 的monkey测试及排错步骤
  7. Matplotlib学习笔记(第一章)
  8. matlab中怎么归一化频率,浅谈频率归一化问题
  9. c++课程设计日历记事本
  10. canvas绘图工具