hdu1022 Train Problem I---模拟栈
题目链接:
http://acm.hdu.edu.cn/showproblem.php?pid=1022
题目大意:
车的进出站问题,先给出N个火车,再按序列一的方式进站,判断能否以序列二的方式出站,若能先输出“Yes.”,再输出出站步骤,以FINISH结束,若不能,输出“No.”,仍以FINISH结束。
思路:
直接模拟栈,注意细节!
#include<iostream>
#include<cstdio>
#include<cstring>
#include<algorithm>
#include<cmath>
#include<queue>
#include<stack>
using namespace std;
typedef long long ll;
const int maxn = 1e6 + ;
const int INF = << ;
int T, n, m;
int v[];
int main()
{
string s1, s2;
while(cin >> n >> s1 >> s2)
{
int j = ;
int tot = , ok = ;
stack<char>q;
for(int i = ; i < s1.size(); i++)
{
q.push(s1[i]);
v[tot++] = ;
while(!q.empty() && q.top() == s2[j])//一开始将j++写在这里,是错的,因为每次判断条件都会加一
{
q.pop();
v[tot++] = ;
j++;
}
}
if(j == n && tot == * n)printf("Yes.\n");
else printf("No.\n");
if(j == n && tot == * n)
{
for(int i = ; i < tot; i++)if(v[i])printf("in\n");
else printf("out\n");
}
printf("FINISH\n");
}
return ;
}
hdu1022 Train Problem I---模拟栈的更多相关文章
- HDOJ/HDU 1022 Train Problem I(模拟栈)
		
Problem Description As the new term comes, the Ignatius Train Station is very busy nowadays. A lot o ...
 - HDU 1022 Train Problem I 模拟栈题解
		
火车进站,模拟一个栈的操作,额外的栈操作,查看能否依照规定顺序出栈. 数据量非常少,故此题目非常easyAC. 直接使用数组模拟就好. #include <stdio.h> const i ...
 - hdu 1022 Train Problem I(栈的应用+STL)
		
Train Problem I Time Limit: 2000/1000 MS (Java/Others) Memory Limit: 65536/32768 K (Java/Others) ...
 - Train Problem I--hdu1022(栈)
		
Train Problem I Time Limit: 2000/1000 MS (Java/Others) Memory Limit: 65536/32768 K (Java/Others)T ...
 - HDU  1022.Train Problem I【栈的应用】【8月19】
		
Train Problem I Problem Description As the new term comes, the Ignatius Train Station is very busy n ...
 - HDU 1022 Train Problem I(栈的操作规则)
		
传送门:http://acm.hdu.edu.cn/showproblem.php?pid=1022 Train Problem I Time Limit: 2000/1000 MS (Java/Ot ...
 - HDU1022 Train Problem I  栈的模拟
		
题目链接:http://acm.hdu.edu.cn/showproblem.php?pid=1042 栈的模拟,题目大意是已知元素次序, 判断出栈次序是否合理. 需要考虑到各种情况, 分类处理. 常 ...
 - HDU 1022 Train Problem I(栈模拟)
		
传送门 Description As the new term comes, the Ignatius Train Station is very busy nowadays. A lot of st ...
 - HDU Train Problem I 1022  栈模拟
		
题目大意: 给你一个n 代表有n列 火车, 第一个给你的一个字符串 代表即将进入到轨道上火车的编号顺序, 第二个字符串代表的是 火车出来之后到顺序, 分析一下就知道这,这个问题就是栈, 先进后出吗, ...
 
随机推荐
- LinkedList源码解析(JDK1.8)
			
package java.util; import java.util.function.Consumer; /** * LinkedList是List和Deque接口的双向链表的实现.实现了所有可选 ...
 - linux(ubuntu)环境下安装IDEA
			
想调试java虚拟机内存溢出的情况,在调试过程中总会出现一些不可预见的状况,正好在学linux,在windows上安装了虚拟机,安装的镜像是ubuntu(乌班图)装在了虚拟机中,装在虚拟机中好处是即使 ...
 - TCHAR字符串查找&反向查找字符串
			
C++支持两种字符串,即常规的ANSI编码("字符串")和Unicode编码(L"字符串"),相应的就有两套字符串处理函数,比如:strlen和wcslen,分 ...
 - [总结] O(n)求和为0的最长子段
			
以这题为例 Solution 我们首先用前缀和差分,可以认为G是1,R是-1,然后求一个前缀和qzh. 如果 qzh[i]==qzh[j] 那么 i~j 这一整段,一定是一个和为0的区间,即红绿相等的 ...
 - 笔记:Maven 插件配置 - maven-jar-plugin
			
在项目中内部重用某个模块的测试代码很常见的需求,可能某个底层模块的测试代码中包含一些常用的测试工具类,或者一些高质量的测试基类供继承,这个时候Maven用户就需要通过配置此插件将测试类打包,插件配置代 ...
 - UITableViewStyleGrouped模式下多余间距
			
第一个section上边多余间距处理 // 隐藏UITableViewStyleGrouped上边多余的间隔 _tableView.tableHeaderView = [[UIView alloc] ...
 - c++ --> c++中四种类型转换方式
			
c++中四种类型转换方式 c风格转换的格式很简单(TYPE)EXPRESSION,但是c风格的类型转换有不少缺点, 1)它可以在任意类型之间转换,比如你可以把一个指向const对象的指针转换成指向 ...
 - Java基础学习笔记四 Java基础语法
			
数组 数组的需求 现在需要统计某公司员工的工资情况,例如计算平均工资.最高工资等.假设该公司有50名员工,用前面所学的知识完成,那么程序首先需要声明50个变量来分别记住每位员工的工资,这样做会显得很麻 ...
 - C语言第四次作业-嵌套作业
			
一.PTA实验作业 题目1:7-4 换硬币 1. 本题PTA提交列表 2.设计思路 第一:定义三个整型变量f,t,o,分别代表五分,两分,一分的数量 第二:输入待换金额x 第三:令f=x/5;t=x/ ...
 - Java作业-集合
			
1. 本周学习总结 2. 书面作业 1. ArrayList代码分析 1.1 解释ArrayList的contains源代码 public boolean contains(Object o) { r ...