HDU 1022 Train Problem I stack 基础题
题意:
有一个火车站,只有一个口同时用于进入和出去,但不能有2辆或以上同时进出。
给出一个n代表有n辆火车(n<=9),编号分别为1到n。
然后给出2个序列,分别代表火车进站的顺序,火车出站的顺序。
问按照这个进站的顺序,能不能按照这个出站的顺序出站。
若能,输出这个口进出的顺序。
1 #include<cstdio> 2 #include<stack> 3 #include<cstring> 4 using namespace std; 5 char in[12]; 6 char out[12]; 7 int ans[24]; 8 int main() 9 { 10 int n; 11 while(scanf("%d",&n)!=EOF) 12 { 13 scanf("%s",in+1); 14 scanf("%s",out+1); 15 memset(ans,-1,sizeof(ans)); 16 stack<char>s; 17 while(!s.empty()) 18 s.pop(); 19 int i=1,j=1; 20 s.push(in[i]); 21 int tot=1; 22 ans[tot++]=0; 23 bool flag=false; 24 while(i<n+1) 25 { 26 while(s.size()&&s.top()==out[j]) 27 { 28 s.pop(); 29 ans[tot++]=1; 30 j++; 31 if(j==n+1) 32 break; 33 } 34 if(j==n+1) 35 { 36 flag=true; 37 break; 38 } 39 i++; 40 if(i<=n) 41 { 42 s.push(in[i]); 43 ans[tot++]=0; 44 } 45 } 46 if(flag) 47 { 48 printf("Yes.\n"); 49 for(int i=1;i<tot;i++) 50 if(ans[i]==0) 51 printf("in\n"); 52 else 53 printf("out\n"); 54 printf("FINISH\n"); 55 } 56 else 57 { 58 printf("No.\nFINISH\n"); 59 } 60 } 61 return 0; 62 }
提交代码
转载于:https://www.cnblogs.com/-maybe/p/4393982.html
HDU 1022 Train Problem I stack 基础题相关推荐
- hdu 1022 Train Problem I 解题报告
题目链接:http://acm.hdu.edu.cn/showproblem.php?pid=1022 其实是一道上数据结构课讲过的例题 只不过当时讲的是怎么用手算 一道水题又花了好长时间 其实就 ...
- HDU 1022[Train Problem I] 栈的应用
题目链接:http://acm.hdu.edu.cn/showproblem.php?pid=1022 题目大意:一列序列为s1的车厢是否能通过车站的中转以序列s2出站.白皮上有. 关键思想:栈的应用 ...
- hdu 1022 Train Problem I(栈)
标记现在已经匹配到o1的第几列车了,o2从头开始,如果不匹配把o1就放入栈中,匹配后出栈并比较栈顶与o1的下一辆,匹配继续出,不匹配就继续进栈 1 #include <iostream> ...
- train problem I (栈水题)
杭电1002http://acm.hdu.edu.cn/showproblem.php?pid=1022 Train Problem I Time Limit: 2000/1000 MS (Java/ ...
- 【HDOJ】1022 Train Problem I_天涯浪子_新浪博客
[题目]http://acm.hdu.edu.cn/showproblem.php?pid=1022 [报告] 模拟,直接模拟一个栈的运行就行了. [程序] // Task: 1022 Train P ...
- hdu 1023 Train Problem II
题目连接 http://acm.hdu.edu.cn/showproblem.php?pid=1212 Train Problem II Description As we all know the ...
- Train Problem II 卡特兰裸题(入门题)
Train Problem II 题目大意:给你一个数n,表示有n辆火车,编号从1到n,从远方驶过来,问你有多少种出站的可能. 解题思路:模拟栈的问题而已. 卡特兰问题. 1 import jav ...
- HDU 5427 A problem of sorting 水题
题目链接: http://acm.hdu.edu.cn/showproblem.php?pid=5427 A problem of sorting Time Limit: 2000/1000 MS ( ...
- 【ACM】杭电1022:Train Problem I
分析: 明显是一个栈的问题.利用栈后进先出的特点模拟火车进站出站的过程即可轻松解决. 我的思路是: 用2个字符数组保存火车车厢的序列.首先比较出站后(记为s2)数组和出站前 (记为s1)数组的第一个元 ...
最新文章
- java集合(6):TreeMap源码分析(jdk1.8)
- python怎么把所有标点符号置空_Python从小白到攻城狮(1)——python环境搭建
- 把一个一维数组转换为in ()
- 解决问题的经验-javaweb-第一次-已掌握技术栈大致总结(部分),和相关理解,总结,以及对未来学习方向的规划
- P1352 没有上司的舞会
- corosync+pacemaker在centos7上的安装,配置简述
- typora 公式_如何用Typora写Markdown上传至知乎
- sinaapp mysql连接_手把手教你在新浪云上免费部署自己的网站--连接数据库
- c语言qt生成dll与加载dll,Qt制作界面的DLL以及调用
- prototype.js教程及prototype中文手册
- 用DropDownList做的日期
- 面试题整理 | 45道CSS面试题
- cas入门之:cas 4 如何以http形式发布
- 记一次windows系统主引导修复
- 线下综合体-中岛店的一些思考
- 用C语言学习高中数学:补集
- 手机虚拟摄像头_科幻电影成为现实?感受虚拟键盘的狂拽炫酷
- elk笔记16--aggs-Bucket Aggregations
- html表格标题居于标题左侧,css如何设置表格标题(caption标签)的位置
- 中国民营医疗产业经营管理模式与“十四五”发展规划建议报告2021-2027年版
热门文章
- java实现rabbitmq任务模型(work queues), 生产者 消费者 消息队列 能者多劳
- JAXB处理java对象与xml格式之间的转换
- RISC-V教材勘误
- BSD/MIT/Apache许可证印象尚可
- linux中pstree命令的含义,pstree命令--Linux命令应用大词典729个命令解读
- Ubuntu 18.04 下搭建 C/C++编译开发环境及GCC多版本切换
- 游戏经济系统分析:通货与交易
- (转)Managed DirectX +C# 开发(入门篇)(四)
- Matlab中vpa一直在忙,matlab数据类型转换遇到问题,及解决办法,sym,double ,vpa转换...
- python数据分析与展示 嵩天_Python数据分析与展示第2周学习笔记(北理工 嵩天)...