周期字符串!

输入格式

第一行,一个整数N,表示截获到的信号的长度

第二行一个长度为N的字符串,表示这个信号

输出格式

这个信号的最小重复单位的长度

样例

样例输入1
复制代码
6
233233

Copy

样例输出1
复制代码
3

Copy

样例输入2
复制代码
8
12312341

Copy

样例输出2
复制代码
8

Copy

解释

233233这个字符串的最小重复单位为233,其长度为3

12312341这个字符串最小重复单位是他自己,长度为8

数据范围与提示

1 <= N <= 1000

复制代码
#include<stdio.h>
#include<string.h>
int p(char *s,int n){
	for(int t=1;t<=n;t++){//枚举周期t 
		if(n%t==0){//周期t一定是长度n的倍数 
			int flag=1;
			for(int i=0;i<n;i++){//遍历数组判断t是否是周期 
				if(s[i]!=s[i%t]){//若t是周期,则下标i与i%t对应的字符相同 
					flag=0;
					break;
				}
			}
			if(flag==1)return t;
		}
	}
	return n;
}
int main(){
	int n;
	scanf("%d",&n);
	char s[10010];
	scanf("%s",s);
	int l=strlen(s);
	int T=p(s,l);
	printf("%d",T);
	return 0;
} 
相关推荐
熊猫钓鱼>_>2 分钟前
面试出现 606 次的第 K 大,被拆成三个问题问
算法·面试·职场和发展·校招·面经·oj·ai生成
Lzg_na3 分钟前
僵尸进程、孤儿进程、守护进程:含义、区别与生命周期详解
c++
zhanghaha131417 分钟前
C++ 的类是什么(新手保姆讲解,配合 Qt 对照理解)
c++
xuxigifxfh18 分钟前
牛客:BISHI2 【模板】栈的操作
java·开发语言·windows·算法
aqiu11111134 分钟前
【C++算法打怪专栏】LeetCode 402. 移掉 K 位数字(单调栈 + 贪心)
c++·算法·leetcode
(Charon)40 分钟前
【C++面试】线程并发与异步:区别、实现原理及使用场景
开发语言·c++
糖果豆豆1 小时前
对象是字段,还是关系?集合论和范畴论吵了三十年,答案是两个都对
算法·架构
JMchen1 小时前
实战项目一——实现一个高性能图片滤镜App
android·c++·性能优化
第六种自由1 小时前
[路飞]_Leetcode 22. 括号生成
javascript·算法·leetcode
isyoungboy1 小时前
事件驱动状态机与循环扫描状态机:两种计算模型的比较研究
算法·状态机