6_2 铁轨(UVa514)<栈>】的更多相关文章

在一个叫「堆叠市」的城市中有一个有名的火车站.由于地形限制以及经费的关系,火车站及唯一的铁路的样子如下图: 现在火车从A方向来,预定从B方向离开.火车共有N节车厢(N <=1000),并且各车厢依次以1到N来编号.你可以假设各车厢在进站之前可以单独与其他车厢分离,也可以单独离开车站到往B方向的铁轨上.你也可以假设在任何时间火车站都可以容纳所有的车厢.但是一旦一节车厢进站后,就不能再回到A方向的铁轨上了,并且一旦离开车站往B方向后,也不能再回到车站. 现在你的任务是写一个程序,判断火车能否以一特定…
某城市有一个火车站,铁轨铺设如图6-1所示.有n节车厢从A方向驶入车站,按进站顺序编号为1~n.你的任务是判断是否能让它们按照某种特定的顺序进入B方向的铁轨,并驶出车站.例如,出栈顺序(5 4 1 2 3)是不可能的,但(5 4 3 2 1)是可能的. 为了重组车厢,你可以借助中转站C.这是一个可以停放任意多节车厢的车站,一旦从A移入C,就不能再回到A了,一旦从C移入B,就不能再回到C了.换句话说,在任意时刻,只有两种选择,A->C和C->B. 分析:在中转站C中,车厢符合后进先出的原则,因此…
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中,车厢符合后进先出的…
题目链接:https://www.luogu.org/problemnew/show/UVA514 分析: 入站序列是1-n,入站后判断如果等于出站序列的当前值,则直接出站.否则就在栈里待着不动.模拟即可,可以选择使用STL栈或手写. 代码: #include<cstdio> #include <cstring> #include<stack> using namespace std; int a[1005],n,cnt,bh,pd; int main() { whil…
//#define LOCAL #include<cstdio> #include<cstring> #include<cstdlib> #include<stack> using namespace std; ; stack<int>train; int ss[maxn]; int main() { #ifdef LOCAL freopen("test.in","r",stdin); #endif int…
题意:一列有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> usin…
题目大意:给定 N 个数,编号从 1 到 N,现需要判断,利用一个无限大的栈结构,能否实现到给定序列的转换. 题解:本题一共涉及三个部分的交互,分别是目标序列,栈和初始序列,由栈的顶端进入,顶端弹出性质可知,问题转化成目标序列的当前元素,栈顶元素和初始序列的当前元素之间可能情况的讨论. 代码如下 #include <bits/stdc++.h> using namespace std; const int maxn=1e4+10; int n,stk[maxn],top,a[maxn]; vo…
  Rails  There is a famous railway station in PopPush City. Country there is incredibly hilly. The station was built in last century. Unfortunately, funds were extremely limited that time. It was possible to establish only a surface track. Moreover,…
C++中提供了STL模板statck 在使用的时候更为方便 除了一般的队列外 还有STL更有双向队列可以使用 #include<deque> 声明:deque <type > name 应用举例1:铁轨问题 Description There is a famous railway station in PopPush City. Country there is incredibly hilly. The station was built in last century. Un…
PopPush城市有一座著名的火车站.这个国家到处都是丘陵.而这个火车站是建于上一个世纪.不幸的是,那时的资金有限.所以只能建立起一条路面铁轨.而且,这导致这个火车站在同一个时刻只能一个轨道投入使用,因为它缺少空间,两列火车将无路可走.具体看下图.   当地的惯例是每一列火车从A方向驶向B方向时候,会用某种方式将车厢重组.假设火车将要到达A方向,拥有N个车厢(N<=1000),这些车厢按照递增顺序标记为1到N.负责从组车厢的领导,必须知道是否能从组车厢让它驶出B,而这个重组的序列就是a1\a2\…