zoukankan      html  css  js  c++  java
  • T2821 天使之城 codevs

    天使城有一个火车站,每辆火车都从A方向驶入车站,
    再从B方向驶出车站。

    为了调度火车,火车站设有停放轨道,可存放5辆火车。已知从A进入车站顺序为1、2、3……。现在给你一个调度方案,判断是否可行,如果可行,输出出站顺序。
    有以下几种调度方法:
    A. 将A上的头一辆车驶出B方向
    B. 将A上的头一辆车停入暂停轨道
    C. 将暂停轨道上最外面的车驶出B方向

    输入描述 Input Description

    输入第一行一个整数N(n<30)表示调度方案步骤数目。
    下一行一个字符串,有N个大写字母,表示调度方法。

    输出描述 Output Description

    输出若不可行(暂停站满了还停车、暂停站空了还出车),则输出一行“No”。
    若可行,输出一行“Yes”,再输出若干行,每行一个整数,表示车出站序列。

    样例输入 Sample Input

    [样例输入1]
    6
    ABBCCA
    [样例输入2]
    5
    BACAC

    样例输出 Sample Output

    [样例输出1]
    Yes
    1
    3
    2
    4
    [样例输出2]
    No

     
     1 #include<iostream>
     2 #include<cstdio>
     3 #include<algorithm>
     4 #include<cstring>
     5 
     6 using namespace std;
     7 
     8 int N,full,train,num; 
     9 int queue[31],stack[31];
    10 char s;
    11 
    12 int main()
    13 {
    14     cin>>N;
    15     for(int i=1;i<=N;i++)
    16     {
    17         cin>>s;
    18         if(s=='A')
    19         {
    20             num++;
    21             train++;
    22             queue[train]=num;
    23         }
    24         if(s=='B')
    25         {
    26             if(full==5)
    27             {
    28                 cout<<"No"<<endl;
    29                 return 0;
    30             }
    31             num++;
    32             full++;
    33             stack[full]=num;
    34         }
    35         if(s=='C')
    36             if(full!=0)
    37             {
    38                 train++;
    39                 queue[train]=stack[full];
    40                 full--;
    41             }
    42             else
    43             {
    44                 cout<<"No"<<endl;
    45                 return 0;
    46             }
    47     }
    48     cout<<"Yes"<<endl;
    49     for(int i=1;i<=num;i++)
    50         cout<<queue[i]<<endl;
    51 return 0;
    52 }
    ——每当你想要放弃的时候,就想想是为了什么才一路坚持到现在。
  • 相关阅读:
    多线程 NSThread GCD
    UICollectionView 集合视图用法,自定义Cell
    简单的注册 登录
    数据库sqlite的使用
    沙盒机制 归档 反归档
    图片异步加载 ,KVO
    iOS开发系列--通知与消息机制
    制作iOS Ad-Hoc测试应用
    NT_iOS笔记—判断iPhone6
    iOS开发多线程篇—单例模式(ARC)
  • 原文地址:https://www.cnblogs.com/Shy-key/p/6366955.html
Copyright © 2011-2022 走看看