问题:

某城市有一个火车站,铁轨铺设如下图。有n节车厢从A方向驶入车站,按进站顺序编号1~n。出栈顺序是(5,4,1,2,3)是不可能的,但是(5,4,3,2,1)可以。现让这些火车按照某种特定的顺序进入B方向的铁轨并驶出车站。为了重组车厢,可以借助中转站C。C是一个可以停放任意多节车厢的车站,但由于末端封顶,驶入C的车厢必须按照相反的顺序驶出C。对于每个车厢,一旦从A移入C,就不能再回到A了;一旦从C移入B,就不能回到C了。换句话说,在任意时刻,只有两种选择:A→C和C→B。请编程判断判断:按给定的出站顺序,火车能否出站?

解决:

#include<cstdio>
#include<stack>
using namespace std;
const int MAXN=100+10;
int n,target[MAXN];
int main()
{while(scanf("%d",&n)==1){stack<int> s; // Cint A=1,B=1;for(int i=1;i<=n;i++)scanf("%d",&target[i]);int ok=1;while(B<=n){// 直接A到Bif(A==target[B]){A++;B++;}//C不为空且其top是目标,则目标从C出栈,设置下一个目标else if(!s.empty()&&s.top()==target[B])   {s.pop();B++;}//以上条件不满足,但是A还可以入栈一辆车,则A入栈else if(A<=n)   s.push(A++);//不可能完成else {ok=0;break;}}printf("%s\n",ok?"Yes":"No");}return 0;
}

21.铁轨(UVa514)相关推荐

  1. 《算法艺术与信息学竞赛》题目-提交方式对照表 [转]

    id   title how2submit source page 1   盒子里的气球     8 2   图书馆 ural1188   9 3   钓鱼 uva757 pas 13 4   照亮的 ...

  2. 【转】Android4.4 之Bluetooth整理

    原文网址:http://www.cnblogs.com/shed/p/3737016.html Android 4.4上蓝牙协议栈采用的是BRCM和Google共同开发的bluedroid,代替了之前 ...

  3. UVa514 Rails(铁轨)

    UVa514 Rails(铁轨) 题目:铁轨 题目链接:UVa514链接 题目描述: 某城市有一个火车站,有n节车厢从A方向驶入车站,按进站的顺序编号为1-n.你的任务是判断是否能让它们按照某种特定的 ...

  4. UVa514 铁轨 C++

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

  5. 6_2 铁轨(UVa514)栈

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

  6. 铁轨(Rails) Uva514

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

  7. UVA514 铁轨问题

    问题描述 : PopPush城市有一座著名的火车站.这个国家到处都是丘陵.而这个火车站是建于上一个世纪.不幸的是,那时的资金有限.所以只能建立起一条路面铁轨.而且,这导致这个火车站在同一个时刻只能一个 ...

  8. 搭起通往月亮的金天梯:以短视的角度看21世纪登月潮

    最近月球有点忙碌,迎来送往见到了不少新朋友.往前说有首次抵达"月之暗面"的中国嫦娥四号,往近了说有最近被SpaceX送上太空的以色列"创世纪",同时今年很快还会 ...

  9. 揭富人与穷人21个不同思维 看富豪如何脱颖而出

    <富人是怎么想的>(How Rich People Think)的作者Steve Siebold曾在近30年里采访世界各地的富豪,看究竟是什么让富豪从普通人中站出来. 他发现这和金钱基本没 ...

最新文章

  1. iPhone系列设备媒体查询:
  2. SoapUI工具中的用户名和密码如何用net代码实现传入
  3. Kafka系列2-producer和consumer报错
  4. lenze变频器怎么更改地址_S7-200 SMART PLC Modbus通信控制 V20变频器
  5. chown r mysql ._chown -R 用户名:组名 ./ 及 chown用法介绍
  6. 怎样快速画出一个正方体_图形与几何---正方体
  7. Wpf中通过绑定来更新textbox的值
  8. .NET Remoting 入门实例
  9. 购物车项目 复杂版本.待简化
  10. java环境配置:安装jdk和集成开发环境
  11. 捕鱼达人python游戏项目,少儿编程体验课程项目,源码免费分享,内置详细注释,可更改游戏参数;关注获取更多资源
  12. K8S学习笔记之MiniKube的搭建(VM虚拟机环境)
  13. Java并发编程实战_《Java并发编程实战》PDF版本下载
  14. 逆战ds服务器怎么修复,IBMDS3512存储硬盘坏了正确的更换方法应该是怎么
  15. EXCEL长数字显示和转化为文本
  16. 银河麒麟v10_银河麒麟:V10究竟哪里好?开箱测评,瞬间明了!
  17. OpenEuler树莓派基础实验 20212802范辰宇
  18. 涉密计算机不得接入 网络,任何组织和个人都不得将涉密计算机、涉密存储设备接入互联网或其他公共信息网络 - 作业在线问答...
  19. 华为超越三星拿下第一!2019年全球5G手机出货量榜单揭晓
  20. PyTorch安装教程(带图文)

热门文章

  1. 多线程十 JUC包下的常用工具类
  2. lr常用函数(转载,防丢失)
  3. Airflow dag迁移
  4. vuex存储数据的几种方法
  5. 2020年中南大学研究生录取通知书
  6. 使用.Net获取OLEDB数据库的架构.
  7. android 接入阿里百川,Android Studio集成阿里百川即时通讯,编译异常
  8. 02JavaWeb之MyBatis详解、SqlSession执行、mapper代理执行、动态SQL语句、注解开发、resultMap、resultType、多参数传递
  9. arcgis 添加excel站点数据时,提示没有注册类
  10. 如何写出高效可维护并且规范的js代码