习题3-4 周期串(Periodic Strings, UVa455)
#include<stdio.h>
#include<string.h>
char s[100];
int main()
{
int T;
scanf("%d",&T);
while(T--)
{
scanf("%s",s);
int t = 1;
while(1)
{
int len = strlen(s),c = 0;;
for(int i = 0;i < len;i++)
{
if(s[i] == s[(i + t)%len]) c++;
}
if(c == len) break;
t++;
}
printf("%d\n",t);
if(T != 0) printf("\n");
}
return 0;
}
(i + t)%len 的作用是防止i+t越界读到/0
原理是将输入的字符串看成环形串 如果i+t大于了len 就会从头开始 这样这个字符串就是一个环 而周期在环上是不变的
习题3-4 周期串(Periodic Strings, UVa455)的更多相关文章
- 周期串(Periodic Strings,UVa455)
解题思路: 对一个字符串求其最小周期长度,那么,最小周期长度必定是字符串长度的约数,即最小周期长度必定能被字符串长度整除 其次,对于最小周期字符串,每位都能对应其后周期字串的每一位, 即 ABC A ...
- 周期串 (Periodic Strings,UVa455)
#include<stdio.h> #include<string.h> int main(void) { int n,stlen,i,j; ]; while(scanf(&q ...
- 【习题 3-4 UVA - 455】Periodic Strings
[链接] 我是链接,点我呀:) [题意] 在这里输入题意 [题解] 枚举 [代码] #include <bits/stdc++.h> using namespace std; const ...
- 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 ...
- 周期串(JAVA语言)
package 第三章习题; /* * 如果一个字符可以由某个长度为k的字符串重复多次得到,则称该串以k为周期. * 例如:abcabcabcabc 以3为周期(注意:它也以6和12为周期) * ...
- HDU 1358 (所有前缀中的周期串) Period
题意: 给出一个字符串,在所有长度大于1的前缀中,求所有的周期至少为2的周期串,并输出一个周期的长度以及周期的次数. 分析: 有了上一题 HDU 3746 的铺垫,这道题就很容易解决了 把next求出 ...
- 【周期串】NYOJ-1121 周期串
[题目链接:NYOJ-1121] 例如:abcabcabc 该字符串的长度为9,那么周期串的长度len只可能为{1,3,9},否则就不可能构成周期串. 接下来,就是要在各周期间进行比较.描述不清... ...
随机推荐
- IDEA里如何引入JQuery
HTML页面的JavaScript里一般可以直接使用类似:<script src="js/jquery.js"></script>语句可以直接引入,但是会遇 ...
- layui表单引入ueditor遇坑记
1. 错误示例:表单容器是div标签则无法获取ueditor的内容 注:对于普通的表单元素表单容器是div也都能获取 <!DOCTYPE html> <html> <he ...
- Linux下 ls 命令的高级用法8例
Linux下 ls 命令的高级用法8例 在Linux下,ls这个命令大家肯定太熟悉了,良许相信只要是Linux工程师,每天都会离不开这个命令,而且一天会使用个几百次.但是,除了 ls -l 以外,你还 ...
- virtualbox之紧虚拟主机与本地主机连接
也就是手工配置IP地址.子网掩码.网关和DNS. 设置方法如下: vi /etc/sysconfig/network-scripts/ifcfg-eth0 编辑本地网卡的配置文件 主要查看下面这几项是 ...
- mysql版本和模式查询
查找数据库的: select version() select @@sql_mode 上面是查版本号,下面是查sql-mode,改sql-model要在mysql目录下配置文件 my.ini, 改修改 ...
- pytest(1):安装与使用
pytest介绍 1.pytest是比较成熟的一款python测试框架 2.简单灵活,容易上手,对比unitest框架更丰富. 3.单元测试和复杂的功能测试,都支持. 4.同时支持selenium,a ...
- MySQL行构造器
子查询返回多列的办法 主要用途,项目中初版使用子查询返回一列用来限制主表,项目新版本中,表关联建改为多列时建议使用
- 4.Kafka使用
- 常见消息中间件之ActiveMQ
前言 消息队列是指利用高效可靠的消息传递机制进行与平台无关的数据交流,并基于数据通信来进行分布式系统的集成.目前消息队列已经逐渐成为企业IT系统内部通信的核心手段,它具有低耦合.可靠投递.广播.流量控 ...
- React 服务端渲染方案完美的解决方案
最近在开发一个服务端渲染工具,通过一篇小文大致介绍下服务端渲染,和服务端渲染的方式方法.在此文后面有两中服务端渲染方式的构思,根据你对服务端渲染的利弊权衡,你会选择哪一种服务端渲染方式呢? 什么是服务 ...