某城市有一个火车站

某城市有一个火车站,第1张

某城市有一个火车站

某城市有一个火车站,铁轨铺设如图所示。有n节车厢从方向驶入车站,按进站顺序编号为1~n。你的任务是判断是否能让他们按照某种特定的顺序进入B方向的铁轨并驶出车站。例如出站顺序(5 4 1 2 3)是不可能的,但(5 4 3 2 1)是可能的。

为了重组车厢,你可以借助中转站C。这是一个可以停放任意多节车厢的车站,一旦从A移入C,就不能再回到A了;一旦从C移入B,就不能回到C了。换句话说,在任意时刻,只有两种选择:A->C和C->B。现在请你编写一个程序,对于输入指定进入B方向的铁轨并驶出车站的顺序,判断是否可行。

输入格式:

第一行为一个整数N(N<=1000) 第二行有N个整数,分别为指定的进入B方向铁轨并驶出车站的顺序。

输出格式:

对于每组数据,输出仅有一行,如果可以按指定的顺序驶出车站,则输出Yes,否则输出No。

输入样例:

在这里给出几组输入。例如:

5

5 4 1 2 3

结尾空行

5

1 2 3 4 5

结尾无空行

6

6 5 4 3 2 1

结尾无空行

输出样例:

在这里给出相应的输出。例如:

No

结尾无空行

Yes

结尾无空行

Yes

结尾无空行

#include
int a[2000],b[2000],stack[2000];
int main()
{
    int i,j,n,top,k;
    while(scanf("%d",&n)!=EOF)
    {
       for(i=0;i 

 

欢迎分享,转载请注明来源:内存溢出

原文地址: http://outofmemory.cn/zaji/5692798.html

(0)
打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
上一篇 2022-12-17
下一篇 2022-12-17

发表评论

登录后才能评论

评论列表(0条)

保存