t2712:字符串移位包含问题
2016-01-15 17:05
316 查看
t2712:字符串移位包含问题
总时间限制:1000ms 内存限制:65536kB
描述
给定两个字符串s1和s2,要求判定其中一个字符串
是否是另一字符串通过循环移位后的子字符串。例如
CDAA是由AABCD两次移位后BCDAA的子串,而ABCD
与ACBD不能通过移位来得到其中一个字符串是另一个字
符串循环移位的子串。
输入
第一行有一个整数n,表示这组测试数据共有n行。
其后n行,每行由两个字符串组成。
输出
如果一个字符串是另一字符串通过循环移位的子串,
则返回true,否则返回false。
样例输入
2
AABCD CDAA
ABCD ACBD
样例输出
true
false
分析:据网上流传资料,假如两个串a和b满足:b是a循环移位后的一个子串,则b是串a&a的子串。当然,在这之前要满足LenA>=LenB,否则不科学不合理。
总时间限制:1000ms 内存限制:65536kB
描述
给定两个字符串s1和s2,要求判定其中一个字符串
是否是另一字符串通过循环移位后的子字符串。例如
CDAA是由AABCD两次移位后BCDAA的子串,而ABCD
与ACBD不能通过移位来得到其中一个字符串是另一个字
符串循环移位的子串。
输入
第一行有一个整数n,表示这组测试数据共有n行。
其后n行,每行由两个字符串组成。
输出
如果一个字符串是另一字符串通过循环移位的子串,
则返回true,否则返回false。
样例输入
2
AABCD CDAA
ABCD ACBD
样例输出
true
false
分析:据网上流传资料,假如两个串a和b满足:b是a循环移位后的一个子串,则b是串a&a的子串。当然,在这之前要满足LenA>=LenB,否则不科学不合理。
#include <stdio.h> #include<string.h> int main(int argc, char *argv[]) { int n,i; char a[10000],b[10000],t[20000]; char *p; scanf("%d",&n); //printf("%d\n",n); getchar(); for(i=0;i<n;i++) { scanf("%s%s",a,b); getchar(); //printf("%s %s\n",a,b); if(strlen(a)>=strlen(b)) { t[0]='\0'; strcpy(t,a); strcat(t,a); p=NULL; p=strstr(t,b); if(p!=NULL) printf("true\n"); else printf("false\n"); } else { t[0]='\0'; strcpy(t,b); strcat(t,b); p=NULL; p=strstr(t,a); if(p!=NULL) printf("true\n"); else printf("false\n"); }/**/ } return 0; }
相关文章推荐
- Android通过Webservice操作sqlserver数据库实例代码
- MFC中ActiveX控件的使用
- CodeForces 369A
- 多方法批量删除Android中无用的资源(更新Android Studio2.1工具)
- Python字符串的encode与decode研究心得乱码问题解决方法(很多的编码问题都可以从此得出答案)
- proc/<pid>/maps文件格式
- Objective-C属性特性
- Ubuntu搭建Android源码编译环境
- Android如何设置TextView的行间距、行高。
- ssh2项目之自己想的购物网站
- (转)Linux makefile 教程 非常详细,且易懂
- FTP断点续传
- HDU 1995 汉诺塔V && HDU 1996 汉诺塔VI &&HDU 2077 汉诺塔IV【快速幂】
- Web测试工具 http_load 一个httpd 压力测试工具
- 仿美团网,大众点评购买框悬浮效果之修改版
- extjs入门-1
- [Computer and Network Security] Applied Cryptography
- Android Studio 用法
- linux查看系统编码和修改系统编码的方法
- 【剑指offer】6.3知识迁移能力——面试题38:数字在排序数组中出现的次数