HDU_5414 CRB and String 【字符串】
一、题目
二、分析
对于这题,读懂题意非常重要。
题目的意思是在$s$的基础上,按题目中所描述的步骤,即在$s$中任意选择一个字符$c$,在这个字符后面添加一个不等于$c$的字符$d$。
问最终能否由$s$按步骤变成$t$。
理解了题意后,我们就可以推导几个基本结论:
1 $s$肯定是$t$的字串。
2 由于是在$s$的基础上进行添加的,那么,我们可以确定除了最前面相等的$k$个串是无法添加的,后面的串都可以添加出来。如果$t$前面由相等的$k$个串,易证:$s$前面也必须由$k$个相等的串,可以结合步骤的处理了过程画一下。
满足上述两个条件则可以由$s \to t$。
三、AC代码
1 #include <cstdio>
2 #include <iostream>
3 #include <cstring>
4
5 using namespace std;
6 const int maxn = 1e5 + 13;
7 char s[maxn], t[maxn];
8
9 bool solve()
10 {
11 int i, j;
12 bool flag = true;
13 for(i = j = 0; t[i] != '\0'; i++)
14 {
15 if(flag && t[i] == t[0] && s[j] != t[0])
16 break;
17 if(t[i] != t[0])
18 flag = false;
19 if(t[i] == s[j])
20 j++;
21 }
22 if(s[j] == '\0' && t[i] == '\0')
23 return true;
24 else
25 return false;
26 }
27
28 int main()
29 {
30 //freopen("input.txt", "r", stdin);
31 int T;
32 scanf("%d", &T);
33 while(T--)
34 {
35 scanf("%s%s", &s, &t);
36 if(solve())
37 {
38 puts("Yes");
39 }
40 else
41 {
42 puts("No");
43 }
44
45 }
46 return 0;
47 }
HDU_5414 CRB and String 【字符串】的更多相关文章
- CRB and String
CRB and String Time Limit: 2000/1000 MS (Java/Others) Memory Limit: 65536/65536 K (Java/Others) Tota ...
- HDU-5414 CRB and String
http://acm.hdu.edu.cn/showproblem.php?pid=5414 题意:给定字符串s和t,可以在s里面选一个字符c,然后任选一个字符d(d!=c)将d插入到c的后面,问能不 ...
- Java String字符串/==和equals区别,str。toCharAt(),getBytes,indexOf过滤存在字符,trim()/String与StringBuffer多线程安全/StringBuilder单线程—— 14.0
课程概要 String 字符串 String字符串常用方法 StringBuffer StringBuilder String字符串: 1.实例化String对象 直接赋值 String str=& ...
- [CareerCup] 1.3 Permutation String 字符串的排列
1.3 Given two strings, write a method to decide if one is a permutation of the other. 这道题给定我们两个字符串,让 ...
- 03-Java String字符串详解
1.Java字符串String A.实例化String字符串:直接赋值(更合理一些,使用较多).使用关键字new. B.String内容的比较 // TODO Auto-generated metho ...
- C++学习38 string字符串的增删改查
C++ 提供的 string 类包含了若干实用的成员函数,大大方便了字符串的增加.删除.更改.查询等操作. 插入字符串 insert() 函数可以在 string 字符串中指定的位置插入另一个字符串, ...
- C++学习37 string字符串的访问和拼接
访问字符串中的字符 string 字符串也可以像字符串数组一样按照下标来访问其中的每一个字符.string 字符串的起始下标仍是从 0 开始.请看下面的代码: #include <iostrea ...
- java String字符串——进度1
String字符串 在JAVA中提供了多种创建字符串对象的方法,这里介绍最简单的两种, 第一种是直接赋值, 第二种是使用String类的构造方法: 如下所示: Strin ...
- 关于String字符串反转
这是网上看到的一篇java面试题中的问题: 问题是: 如何将一个String字符串反转. String str = "1234567"; int length = str.leng ...
随机推荐
- codeforces 1037E-Trips 【构造】
题目:戳这里 题意:n个点,每天早上会在这n个点中加一条边,每天晚上最大的子图满足子图中每个点都有k条或以上的边. 解题思路:看了官方题解,先把所有的点都连上,再从最后一天往前减边,用set维护最大的 ...
- const,volatile,static,typdef,几个关键字辨析和理解
1.const类型修饰符 const它限定一个变量初始化后就不允许被改变的修饰符.使用const在一定程度上可以提高程序的安全性和可靠性.它即有预编译命令的优点也有预编译没有的优点.const修饰的变 ...
- webpack4.0源码解析之打包后js文件分析
首先,init之后创建一个简单的webpack基本的配置,在src目录下创建两个js文件(一个主入口文件和一个非主入口文件)和一个html文件,package.json,webpack.config. ...
- Spring Cloud Alibaba+Nacos搭建微服务架构
1. Spring Cloud Alibaba 简介 Spring Cloud Alibaba是阿里巴巴为分布式应用提供的一站式解决方案,能够更方便快捷地搭建分布式平台,nacos拥有着替换eu ...
- NoSQL 数据库案例实战 -- MongoDB数据备份、恢复
MySQL数据迁移到MongoDB数据库中 前言 一.数据备份 二.数据恢复 前言 本环境是基于 Centos 7.8 系统构建mongodb-enterprise-4.2.8学习环境具体构建,请参考 ...
- Nginx环境下,PHP下载,中文文件,下载失效(英文可以下载)怎么解决呢?
参考出处: http://www.imooc.com/qadetail/76393 Nginx环境下,PHP下载,中文文件,下载失效(英文可以下载)怎么解决呢? 背景介绍: 文件名 为英文时可以下载 ...
- PWA All In One
PWA All In One chrome://apps/ PWA Progressive Web App 可安装,添加到主屏 离线使用 轻量,快速 基于 Web 技术一套代码多端复用(移动端,桌面端 ...
- requestAnimationFrame & canvas
requestAnimationFrame & canvas https://codepen.io/xgqfrms/pen/jOEPjLJ See the Pen requestAnimati ...
- nasm astrcpy_s函数 x86
xxx.asm %define p1 ebp+8 %define p2 ebp+12 %define p3 ebp+16 section .text global dllmain export ast ...
- 「NGK每日快讯」12.1日NGK公链第28期官方快讯!