Description

研究证明,汉的字阅读序顺是不会影响你明白这句话的意思的。

但是如果顺序差的太多也是会影响的,比如汉阅读顺的序字你就看不懂什么意思了。

那么多少算多呢?科学家芦苇给出证明,当两个字符串中,如果A中的每一个字符的位置和在B中的同样的字符的位置的距离绝对值小于m,并且一一对应,那么就不会影响到阅读顺序。

也就是说如果把B重排可以得到A,那么B中的每一个字符的位置离A中的对应位置应小于等于m。

对于每一组字符串,判断B字符串还能不能读出A的意思。

Input

第一行一个t t<=7 代表数据组数

对于每一组,第一行一个m,意义如题意。 m <= 100

第二行一个字符串A len(A) <= 100000。

第二行一个字符串B len(A) == len(B)。

字符串都是英文小写字母。

Output

对于每一组输出一行yes或no代表B能不能读出A的意思。

Sample Input

2

0

ab

ba

1

ab

ba

Sample Output

no

yes

Source
“科林明伦杯”计算机学院2018年程序设计竞赛

解题思路

package hrbust;
import java.util.*;
import java.math.*;
public class Main {
public static void main(String[] args) {
// TODO Auto-generated method stub
Scanner in=new Scanner(System.in);
int t=in.nextInt();
while(t>0) {
int m=in.nextInt();
String A=in.next();
String B=in.next();
int x=0,flag=0;
char ji[]=new char[100005];
for(int i=0;i<A.length();i++) {
int y=x;
while((ji[y]==1||A.charAt(i)!=B.charAt(y)&&y<=i+m&&y<B.length())) {
y++;
}
if(y==B.length()||y>i+m) {
flag=1;
break;
}
ji[y]=1;
while(ji[x]==1)x++;
}
if(flag==0) System.out.println("yes");
else System.out.println("no");
t--;
}
}
}

hrbust 2384 相同的不相同的字符串的更多相关文章

  1. [bzoj1892][bzoj2384][bzoj1461][Ceoi2011]Match/字符串的匹配_KMP_树状数组

    2384: [Ceoi2011]Match 1892: Match 1461: 字符串的匹配 题目大意: 数据范围: 题解: 很巧妙的一道题呀. 需要对$KMP$算法有很深的理解才行. 首先我们需要发 ...

  2. hrbustoj 1551:基础数据结构——字符串2 病毒II(字符串匹配,BM算法练习)

    基础数据结构——字符串2 病毒IITime Limit: 1000 MS Memory Limit: 10240 KTotal Submit: 284(138 users) Total Accepte ...

  3. Hrbust 2363 Symmys (Manacher + DP)

    题目链接  Hrbust 2363 来源  “科林明伦杯”哈尔滨理工大学第七届程序设计团队赛 Problem J 题意  给出一个长度为$1e6$的字符串,求最小可重回文子串覆盖数量 首先Manach ...

  4. Python高手之路【六】python基础之字符串格式化

    Python的字符串格式化有两种方式: 百分号方式.format方式 百分号的方式相对来说比较老,而format方式则是比较先进的方式,企图替换古老的方式,目前两者并存.[PEP-3101] This ...

  5. 测试一下StringBuffer和StringBuilder及字面常量拼接三种字符串的效率

    之前一篇里写过字符串常用类的三种方式<java中的字符串相关知识整理>,只不过这个只是分析并不知道他们之间会有多大的区别,或者所谓的StringBuffer能提升多少拼接效率呢?为此写个简 ...

  6. java中的字符串相关知识整理

    字符串为什么这么重要 写了多年java的开发应该对String不陌生,但是我却越发觉得它陌生.每学一门编程语言就会与字符串这个关键词打不少交道.看来它真的很重要. 字符串就是一系列的字符组合的串,如果 ...

  7. JavaScript 字符串实用常操纪要

    JavaScript 字符串用于存储和处理文本.因此在编写 JS 代码之时她总如影随形,在你处理用户的输入数据的时候,在读取或设置 DOM 对象的属性时,在操作 Cookie 时,在转换各种不同 Da ...

  8. Java 字符串格式化详解

    Java 字符串格式化详解 版权声明:本文为博主原创文章,未经博主允许不得转载. 微博:厉圣杰 文中如有纰漏,欢迎大家留言指出. 在 Java 的 String 类中,可以使用 format() 方法 ...

  9. Redis的简单动态字符串实现

    Redis 没有直接使用 C 语言传统的字符串表示(以空字符结尾的字符数组,以下简称 C 字符串), 而是自己构建了一种名为简单动态字符串(simple dynamic string,sds)的抽象类 ...

随机推荐

  1. lambda+mutable配合move实现单函数多程序域

    主代码 //-----------------------------------说明一的代码 void fun0{ int t = 10; auto loopFun = [=]() mutable{ ...

  2. zhifubao

    使用Git的一个优势便是 我们可以自由的切换到其他分支,而不影响主分支的正常开发,每个分支上都是一份完成的可执行代码那么如何创建分支呢, 创建分支有几种方法, 本地分支和远程分支的差别,意义各是什么,

  3. re模块 - 正则表达式 疏理(一)

    在网上总是很难找到令自己比较满意的,关于正则表达式的文章.所以决定自己来总结一波,并配上相应的示例. 正则表达式:定义了规则,用来字符串处理. 用途: 1.匹配 - 符合规则的字符串,则认为匹配了. ...

  4. SqlServer存储过程及函数

    存储过程和函数类似于Java中的方法. ⒈存储过程 一组预先编译好的sql语句的集合,理解成批处理语句. 好处: ①提高代码的重用性 ②简化操作 ③减少了编译次数并且减少了和数据库服务器的连接次数,提 ...

  5. Input子系统(二)【转】

    转自:http://blog.chinaunix.net/uid-25047042-id-4192368.html 上一篇中粗略的分析了下input_dev,input_handle,input_ha ...

  6. day16——函数式编程和内置函数

    编程的方法论 面向过程:找到问题的 函数式:不可变.不用变量保存状态.不修改变量 面向对象: 高阶函数: 满足俩个特性任意一个即为高阶函数 1.函数的传入参数是一个函数名 2.函数的返回值是一个函数名 ...

  7. 【easy】108. Convert Sorted Array to Binary Search Tree

    Given an array where elements are sorted in ascending order, convert it to a height balanced BST. Fo ...

  8. 收集Typecho 0.9还能用的插件

    收集Typecho 0.9还能用的插件 名称 描述 版本 作者 BaiduSubmit 百度结构化插件 for Typecho 0.5.2 老高 CateFilter 首页过滤指定分类 1.2.1 R ...

  9. 【MySQL】MySQL内连接,左连接,右连接查询

    概念 INNER JOIN(内连接):获取两个表中字段匹配关系的记录.也就是只会返回共有的内容. LEFT JOIN(左连接):获取左表所有记录,即使右表没有对应匹配的记录. RIGHT JOIN(右 ...

  10. python学习之re (?P...)通过关键字获取组以及( P=name)

    和其他的RE表达式一样,但是匹配的子串可以通过group的名字 name来获取.即  result.group('name')  (提示,字符串数字都是常量,所以关键字都可以被视为整型(hash结果) ...