首页 > 代码库 > uva514(trail)(模拟栈)
uva514(trail)(模拟栈)
1 //#define LOCAL 2 #include<cstdio> 3 #include<cstring> 4 #include<cstdlib> 5 #include<stack> 6 using namespace std; 7 const int maxn=1005; 8 stack<int>train; 9 int ss[maxn];10 int main()11 {12 #ifdef LOCAL13 freopen("test.in","r",stdin);14 #endif15 int n,k;16 while(scanf("%d",&n)&&n>0)17 {18 while(1)19 {20 scanf("%d",&ss[1]);21 if(ss[1]==0)break;22 for(int i=2;i<=n;i++)23 scanf("%d",ss+i);24 while(!train.empty())25 train.pop();26 k=1;27 for(int i=1;i<=n;i++)28 {29 train.push(i);30 while(!train.empty()&&train.top()==ss[k])31 {32 k++;33 train.pop();34 }35 }36 if(train.empty())printf("Yes\n");37 else printf("No\n");38 }39 }40 return 0;41 }
题意: 一辆火车一次车厢依次进栈(1,2,3,4,5...,n),问有没有可能有安给出的方式出栈。
uva514(trail)(模拟栈)
声明:以上内容来自用户投稿及互联网公开渠道收集整理发布,本网站不拥有所有权,未作人工编辑处理,也不承担相关法律责任,若内容有误或涉及侵权可进行投诉: 投诉/举报 工作人员会在5个工作日内联系你,一经查实,本站将立刻删除涉嫌侵权内容。