周期串(Periodic Strings,UVa455)

解题思路:
对一个字符串求其最小周期长度,那么,最小周期长度必定是字符串长度的约数,即最小周期长度必定能被字符串长度整除
其次,对于最小周期字符串,每位都能对应其后周期字串的每一位,
即 ABC ABCABC (345678)->%其字串长度3
012 3%3 4%3 5%3 6%3 7%3 8%3
0 1 2 0 1 2
if(a[j]!=a[j%3])说明不对应,不是周期,进行下一位扫描。
AC Code:
#include<stdio.h>
#include<string.h>
int main(void)
{
int n,stlen,i,j;
char carr[1000];
while(scanf("%d",&n)!=EOF)
{
while(n--)
{
scanf("%s",carr);
stlen=strlen(carr);
for(i=1; i<=stlen; i++)
{
if(stlen%i==0)
{
for(j=i; j<stlen; ++j)
if(carr[j]!=carr[j%i])break;
if(j==stlen)
{
printf("%d\n",i);
break;
}
}
}
if(n)printf("\n");
}
}
return 0;
}
周期串(Periodic Strings,UVa455)的更多相关文章
- 习题3-4 周期串(Periodic Strings, UVa455)
		
#include<stdio.h> #include<string.h> char s[100]; int main() { int T; scanf("%d&quo ...
 - 周期串 (Periodic Strings,UVa455)
		
#include<stdio.h> #include<string.h> int main(void) { int n,stlen,i,j; ]; while(scanf(&q ...
 - E - Power Strings,求最小周期串
		
E - Power Strings Time Limit:3000MS Memory Limit:65536KB 64bit IO Format:%I64d & %I64u S ...
 - UVA.455 Periodic Strings(字符串的最小周期)
		
Periodic Strings 模板 题意分析 判断字符串的最小周期 代码总览 /* Title:UVA.455 Author:pengwill Date:2016-12-16 */ #includ ...
 - UVa 455 - Periodic Strings解题报告
		
UVa OJ 455 Periodic Strings A character string is said to have period k if it can be formed by conca ...
 - HDU 1358 (所有前缀中的周期串) Period
		
题意: 给出一个字符串,在所有长度大于1的前缀中,求所有的周期至少为2的周期串,并输出一个周期的长度以及周期的次数. 分析: 有了上一题 HDU 3746 的铺垫,这道题就很容易解决了 把next求出 ...
 - 【周期串】NYOJ-1121 周期串
		
[题目链接:NYOJ-1121] 例如:abcabcabc 该字符串的长度为9,那么周期串的长度len只可能为{1,3,9},否则就不可能构成周期串. 接下来,就是要在各周期间进行比较.描述不清... ...
 - 51Nod1553 周期串查询 字符串 哈希 线段树
		
原文链接https://www.cnblogs.com/zhouzhendong/p/51Nod1553.html 题目传送门 - 51Nod1553 题意 有一个串只包含数字字符.串的长度为n,下标 ...
 - 问题 K: 周期串plus
		
问题 K: 周期串plus 时间限制: 1 Sec 内存限制: 128 MB提交: 682 解决: 237[提交] [状态] [命题人:外部导入] 题目描述 如果一个字符串可以由某个长度为k的字符 ...
 
随机推荐
- [转]20位活跃在Github上的国内技术大牛
			
FROM : http://blog.csdn.net/yaoxtao/article/details/38518933 20位活跃在Github上的国内技术大牛 本文列举了20位在Github上非常 ...
 - 从0开始学Java——@override的作用
			
早上跟着<jsp&Servlet学习笔记>来学习jsp,在使用eclipse创建了一个servlet类之后,发现自动创建的类和书上相比,doGet方法的前面少了@override, ...
 - Linux操作系统基础(完结)
			
摘要 一.Linux操作系统概述 二.Linux操作系统安装 三.Linux文件系统及文件基础 四.Linux操作系统命令使用基础 五.Linux应用程序的安装与卸载基础 五.用户及进程 六.相关信息 ...
 - [CareerCup] 8.3 Musical Jukebox 点唱机
			
8.3 Design a musical jukebox using object-oriented principles. CareerCup这书实在是太不负责任了,就写了个半调子的程序,说是完整版 ...
 - 游戏世界之Unity3D的基础认识
			
1.写在前面 Unity3D是由Unity Technologies开发的一个让你轻松创建诸如三维视频游戏.建筑可视化.实时三维动画等类型互动内容的多平台的综合型游戏开发工具,是一个全面整合的专业游戏 ...
 - iOS 自定义控件开发(中)
			
<iOS 自定义控件开发(上)> <iOS 自定义控件开发(中)> 接上篇iOS自定义控件开发之后,我们尝试另外一种. 在Xcode的右边,会看到如下的图 其中,上面有一个:C ...
 - ASP.NET 系列:RBAC权限设计
			
权限系统的组成通常包括RBAC模型.权限验证.权限管理以及界面访问控制.现有的一些权限系统分析通常存在以下问题: (1)没有权限的设计思路 认为所有系统都可以使用一套基于Table设计的权限系统.事实 ...
 - Git.Framework 框架随手记--ORM项目工程
			
前面已经简单介绍过了该框架(不一定是框架),本文开始重点记录其使用过程.可能记录的内容不是太详尽,框架也可能非常烂,但是里面的代码句句是实战项目所得.本文非教唆之类的文章,也非批判之类的文章,更不是炫 ...
 - How to set China Azure Storage Connection String
			
Configure Visual Studio to access China Azure Storage Open Visual Studio 2012, Server Explorer Add n ...
 - Bootstrap3.0学习第十八轮(JavaScript插件——下拉菜单)
			
详情请查看 http://aehyok.com/Blog/Detail/25.html 个人网站地址:aehyok.com QQ 技术群号:206058845,验证码为:aehyok 本文文章链接:h ...