字符环

Time Limit:1000MS Memory Limit:65536KB
Total Submit:562 Accepted:146

Description 

字符环:就是将给定的一个字符串,首尾相连而形成的一个环。
现在我们来玩一个有趣的两人游戏:
每次甲给出两个字符串A和B,然后让乙判断字符串B是否能够被字符环A所包含.
例如,A = aabcd , B = cdaa , 那么B可以包含在A经过旋转后的字符串A’ = cdaab中.

Input 

输入数据的第一行,一个正整数N,表示测试数据的组数.
对于每个数据:
首先2个正整数lengtha 和 lengthb代表字符串A和字符串B的长度。
接下来一行有两个被一个空格隔开的字符串A和B,A和B的长度如上所输入的长度。
长度的范围是1<=length<=100,并且字符串种只含有小写字母

Output 

对于每组测试数据,输出只有一行

如果B字符串含在字符环A中,则输出:YES 否则输出:NO

Sample Input 

2
5 4
aabcd cdaa
5 4
babcd cdaa

Sample Output 

YES
NO

Hint:
aabcd 经过顺时针循环移动可以得到:aabcd-->abcda-->bcdaa-->abcda-->cdaab-->daabc
babcd 经过顺时针循环移动可以得到:babcd-->abcdb-->bcdba-->cdbab-->dbabc-->babcd

Source

第一届程序设计竞赛

解题:这么傻逼的题目居然只有这么点AC率。。。

喜欢坑爹,会出现m大于n的情况,特别要注意这个

 #include <bits/stdc++.h>
using namespace std;
string a,b;
int main() {
int kase,n,m;
ios::sync_with_stdio(false);
cin>>kase;
while(kase--) {
cin>>n>>m;
cin>>a>>b;
if(m > n) {
puts("NO");
continue;
}
a += a;
if(a.find(b) == a.npos) puts("NO");
else puts("YES");
}
return ;
}

ECNUOJ 2147 字符环的更多相关文章

  1. AC日记——字符环 openjudge 1.7 30

    30:字符环 总时间限制:  1000ms 内存限制:  65536kB 描述 有两个由字符构成的环.请写一个程序,计算这两个字符环上最长连续公共字符串的长度.例如,字符串“ABCEFAGADEGKA ...

  2. 字符环(openjudge 2755)

    字符环 总时间限制: 1000ms   内存限制: 65536kB 描述 有两个由字符构成的环.请写一个程序,计算这两个字符环上最长连续公共字符串的长度.例如,字符串“ABCEFAGADEGKABUV ...

  3. LG4051/BZOJ1031 「JSOI2007」字符加密 后缀数组

    问题描述 BZOJ1031 LG4051 题解 发现这是一个环,根据经验,破环为链,于是字符环变为了字符串 之后对这个复制之后的字符串求后缀数组. $len$代表原字符串长度,代表复制后的字符串长度 ...

  4. noi题库(noi.openjudge.cn) 1.7编程基础之字符串T21——T30

    T21:单词替换 描述 输入一个字符串,以回车结束(字符串长度<=100).该字符串由若干个单词组成,单词之间用一个空格隔开,所有单词区分大小写.现需要将其中的某个单词替换成另一个单词,并输出替 ...

  5. BZOJ 2882 & 后缀数组的傻逼实现

    题意: 一个字符环,求一个开头使字典序最小. SOL: 后缀数组打起来...然后居然卡过...10sec的实现我10936ms...居然卡过??? rank倒三...啦啦啦啦啦.... 改个离散化会不 ...

  6. NOI 1.7编程基础之字符串(35题)

    01:统计数字字符个数 查看 提交 统计 提问 总时间限制:  1000ms 内存限制:  65536kB 描述 输入一行字符,统计出其中数字字符的个数. 输入 一行字符串,总长度不超过255. 输出 ...

  7. Redis 的几种数据结构&五种数据类型对象

    先看几种数据结构 通过分析底层的数据结构,学习如何根据场景选型和设计 1,简单动态字符串 redis使用的字符串SDS有别于C语言中的字符串 a, 结构 free字段为已分配但未使用的空间 len为已 ...

  8. OJ题解记录计划

    容错声明: ①题目选自https://acm.ecnu.edu.cn/,不再检查题目删改情况 ②所有代码仅代表个人AC提交,不保证解法无误 E0001  A+B Problem First AC: 2 ...

  9. Codeforces Round #539 div2

    Codeforces Round #539 div2 abstract I 离散化三连 sort(pos.begin(), pos.end()); pos.erase(unique(pos.begin ...

随机推荐

  1. 51nod-1503 猪和回文 - 二维矩阵上的dp

    题目链接 一只猪走进了一个森林.很凑巧的是,这个森林的形状是长方形的,有n行,m列组成.我们把这个长方形的行从上到下标记为1到n,列从左到右标记为1到m.处于第r行第c列的格子用(r,c)表示. 刚开 ...

  2. N!,斯特林近似

    题目链接 输入N求N的阶乘的10进制表示的长度.例如6! = 720,长度为3. Input 第1行:一个数T,表示后面用作输入测试的数的数量.(1 <= T <= 1000) 第2 -  ...

  3. rman参数

    rman 参数 RMAN> show all; 参数是存放在控制文件中的 改参数:(直接改) eg: CONFIGURE RETENTION POLICY TO REDUNDANCY 3 参数: ...

  4. 字符串格式化输出、while循环、运算符、编码

    1.字符串格式化输出 %占位符: %s => 字符串 %d=>整数型 %%=>转义 普通的% %()不能多,不能少,一一对应 f"{}"大括号里的内容一般都放变量 ...

  5. git 常用操作命令行

    mkdir files : 创建一个名字为files的文件夹 cd files : 切换目录到files pwd ; 显示当前所在目录 ls -ah : 查看本地隐藏不可见的文件夹 git init ...

  6. C语言实现简化的正则表达式

    语法: 正则表达式和待匹配字符串都是一行 "^" 标记正则表达式的开始 "$" 标记正则表达式的结束 "*" 匹配前面的子表达式零次或多次 ...

  7. CentOS 6.5 安装 ffmpeg

    CentOS 6.5 安装 ffmpeg 满满的坑   http://download.videolan.org/pub/videolan/x264/snapshots/     安装ffmpeg   ...

  8. Springboot+swagger2的接口文档开发

    一.创建一个SpringBoot项目 1. 2. 3. 4. 把web里的web选中,SQL里选择自己需要的,点击next 二.创建各项所需的controller,configure等 1. 项目布局 ...

  9. #undef 的用法

    在Visual Studio2008中编写如下代码: #include <iostream> using namespace std; int main() { #define MODI ...

  10. Qt 学习之路问题

    Qt5 cannot include the file QMainWindow add "greaterThan(QT_MAJOR_VERSION, 4): QT += widgets&qu ...