ECNUOJ 2147 字符环

摘要:
长度范围是1&lt=长度<dbabc->n与stdio同步(假);7cin>8而(kase-){9cin>10cin&gt,>b;n){12put(“否”);13continue;14}15a+=a;16if(a.find(b)==a.npos)put(“否”);17elseputs(“是”);

字符环

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

Description 

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

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的情况,特别要注意这个

ECNUOJ 2147 字符环第2张ECNUOJ 2147 字符环第3张
 1 #include <bits/stdc++.h>
 2 using namespace std;
 3 string a,b;
 4 int main() {
 5     int kase,n,m;
 6     ios::sync_with_stdio(false);
 7     cin>>kase;
 8     while(kase--) {
 9         cin>>n>>m;
10         cin>>a>>b;
11         if(m > n) {
12             puts("NO");
13             continue;
14         }
15         a += a;
16         if(a.find(b) == a.npos) puts("NO");
17         else puts("YES");
18     }
19     return 0;
20 }
View Code

免责声明:文章转载自《ECNUOJ 2147 字符环》仅用于学习参考。如对内容有疑问,请及时联系本站处理。

上篇7.23翻倍奖励——滴滴快车单(成交率≥60%,≥5指派单)C#——DataGridView控件填写数据事件下篇

宿迁高防,2C2G15M,22元/月;香港BGP,2C5G5M,25元/月 雨云优惠码:MjYwNzM=

相关文章

WebApi如何传递参数

 一 概述 一般地,我们在研究一个问题时,常规的思路是为该问题建模;我们在研究相似问题时,常规思路是找出这些问题的共性和异性。基于该思路,我们如何研究WebApi参数传递问题呢? 首先,从参数本身来说,种类较为多(如int,double,float,string,array,Object等),且有些类型较为复杂(如值类型和引用类型的机制等); 其次,从基于...

spring security 核心切面

import org.aopalliance.intercept.MethodInterceptor; import org.apache.commons.collections.CollectionUtils; import org.springframework.aop.support.StaticMethodMatcherPointcutAdvis...

C++指针(二)

  指针提供间接操作其所指对象的功能。与对迭代器进行解引用操作一样,对指针进行解引用可访问它所指的对象,*操作符将获取指针所指的对象:     string s("hello world");     string *sp = &s;         cout<<*sp;             //结果为:hello world   ...

CTeX学习心得总结

CTeX 又称 CTeX中文套装,是基于 Windows 下的 MiKTeX 的发行版,集成了编辑器WinEdt 和 PostScript 处理软件 Ghostscript 和 GSview 等主要工具。 CTeX 在MiKTeX 的基础上增加了对中文的完整支持。 CTeX 支持 CJK, xeCJK, CCT, TY 等多种中文 TeX 处理方式。 C...

Mysql 修改数据库,mysql修改表类型,Mysql增加表字段,Mysql删除表字段,Mysql修改字段名,Mysql修改字段排列顺序,Mysql修改表名

对于已经创建好的表,尤其是已经有大量数据的表,如果需要对表做一些结构上的改变,我们可以先将表删除(drop),然后再按照新的表定义重建表。这样做没有问题,但是必然要做一些额外的工作,比如数据的重新加载。而且,如果有服务在访问表,也会对服务产生影响。因此,在大多数情况下,表结构的更改一般都使用alter table 语句,以下是一些常用的命令。 (1) 修改...

如何掌握C#的核心技术

如何掌握C#的核心技术 原图链接 引子 前不久看到一个段子,某年宁波交警引进人脸识别技术抓拍行人闯红灯,结果一天下来被发现闯红灯次数最多的是珠海女子董小姐,日闯红灯3000多次。宁波交警连夜研究抓捕方案,最后分析发现,原来是大巴车上的某掌握核心的产品广告被错误识别了。 这家自称掌握了核心的制造企业,虽然并非每个产品都卖座,但这样的广告词确实也牢牢抓住了观众...