HDU 1022 Train Problem I
这题是一栈题,开始我用数组模拟做,改了一上午没改得出,最后放弃了,后来跟白神一起做时,白神发现错误了,也是我犯的错误,像 4 1234 2134 这种也可以啊。。。 我明白了,中间也可以出栈。
先把两个字符串存起来,然后先进栈,若遇到出栈的信息且要出的那辆车刚好在栈顶就可以出。否则就进栈
#include<stdio.h>
#include<string.h>
int n,c,num1[11],num2[11],rec[11],L[11];
int main( )
{int i,j,cnt,k;while( scanf( "%d",&n ) == 1 ){c = 0;memset( rec,0,sizeof( rec ) );for( i = 0; i < n; ++i )scanf( "%1d",&num1[i] );for( i = 0; i < n; ++i )scanf( "%1d",&num2[i] );j = 0;cnt = i = c = -1;L[++c] = num1[++i];//把第一个车进栈 rec[++cnt] = 0;while( i < n && j < n ){while( c >= 0 && L[c] == num2[j] )rec[++cnt] = 1,--c,++j;//此车在栈顶,则可出车 rec[++cnt] = 0,L[++c] = num1[++i];//进车 }if( i == n && j == n ){//rec为0进入rec为1出车 puts( "Yes." );for( k = 0; k < cnt; ++k )puts( rec[k] ? "out" : "in" );}elseputs( "No." );puts( "FINISH" );}return 0;
}
转载于:https://www.cnblogs.com/Lvsi/archive/2011/06/15/2081081.html
HDU 1022 Train Problem I相关推荐
- HDU 1022[Train Problem I] 栈的应用
题目链接:http://acm.hdu.edu.cn/showproblem.php?pid=1022 题目大意:一列序列为s1的车厢是否能通过车站的中转以序列s2出站.白皮上有. 关键思想:栈的应用 ...
- hdu 1022 Train Problem I 解题报告
题目链接:http://acm.hdu.edu.cn/showproblem.php?pid=1022 其实是一道上数据结构课讲过的例题 只不过当时讲的是怎么用手算 一道水题又花了好长时间 其实就 ...
- hdu 1022 Train Problem I(栈)
标记现在已经匹配到o1的第几列车了,o2从头开始,如果不匹配把o1就放入栈中,匹配后出栈并比较栈顶与o1的下一辆,匹配继续出,不匹配就继续进栈 1 #include <iostream> ...
- HDU 1022 Train Problem I stack 基础题
题意: 有一个火车站,只有一个口同时用于进入和出去,但不能有2辆或以上同时进出. 给出一个n代表有n辆火车(n<=9),编号分别为1到n. 然后给出2个序列,分别代表火车进站的顺序,火车出站的顺 ...
- 【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 ...
- 【ACM】杭电1022:Train Problem I
分析: 明显是一个栈的问题.利用栈后进先出的特点模拟火车进站出站的过程即可轻松解决. 我的思路是: 用2个字符数组保存火车车厢的序列.首先比较出站后(记为s2)数组和出站前 (记为s1)数组的第一个元 ...
- train problem I (栈水题)
杭电1002http://acm.hdu.edu.cn/showproblem.php?pid=1022 Train Problem I Time Limit: 2000/1000 MS (Java/ ...
- Train Problem II(卡特兰数 组合数学)
题目链接:http://acm.hdu.edu.cn/showproblem.php?pid=1023 Train Problem II Time Limit: 2000/1000 MS (Java/ ...
- Train Problem I(火车进站问题)hdu1022
问题 Train Problem I - http://acm.hdu.edu.cn/showproblem.php?pid=1022 分析 堆栈的核心逻辑就是"先进后出" 或 & ...
最新文章
- 毒霸duba劫持首页的解决方案(实测有效)
- leetcode算法题--子集
- html调用父页面的函数,javascript – 如何从子窗口jquery调用父窗口函数?
- 无限级分类及生成json数据
- 第一范式转化为第二范式_深度解读《中国智能经济发展白皮书》:AI为核心驱动力,百度给出智能范式...
- pytorch神经网络解决回归问题(非常易懂)
- 映射java是什么_java – 映射,绑定和解析有什么区别?
- Pod install 慢, pod update 慢, Cocoapods setup下载缓慢,手动解决方案
- IAR8.3 STM8安装过程
- 速度上车,全网无损音乐,付费内容任你免费下载
- 计算机硬盘更换图解,GHOST磁盘克隆详细图文教程,看后你也可以自己快速更换电脑硬盘...
- c++中char的用法详解
- 微搭低代码基础开发教程
- win7系统无法开启telnet服务器,win7系统telnet出现错误怎么办?win7系统开启telnet出错的修复教程...
- Either类java_怎样利用Either和Option进行函数式错误处理的示例
- 软件开发团队的有效管理和激励
- python调用百度AI----文字识别
- git从某个分支创建新分支
- 一意孤行亚马逊----一个钓鱼疯子的巴西亚马逊之行( 12.九月 28日 在营地的最后一天 ) 作者:咸水鱼...
- 【Python】实现csv文件转json文件