《P4391 [BalticOI 2009] Radio Transmission 无线传输 题解》

题目描述

给你一个字符串 s1​,它是由某个字符串 s2​ 不断自我连接形成的(保证至少重复 2 次)。但是字符串 s2​ 是不确定的,现在只想知道它的最短长度是多少。

输入格式

第一行一个整数 L,表示给出字符串的长度。

第二行给出字符串 s1​ 的一个子串,全由小写字母组成。

输出格式

仅一行,表示 s2​ 的最短长度。

输入输出样例

输入 #1复制

复制代码
8
cabcabca

输出 #1复制

复制代码
3

说明/提示

样例输入输出 1 解释

对于样例,我们可以利用 abc 不断自我连接得到 abcabcabcabc,读入的 cabcabca,是它的子串。

规模与约定

对于全部的测试点,保证 1≤L≤106。

代码实现:

#include<iostream>

#include<string>

#include<cmath>

using namespace std;

int main()

{

int n;

cin>>n;

string s,s1;

cin>>s;

int m=s.length();

s1=s;

int count=0;

for(int i=0;i<m;i++)

{

if(s1.substr(i+1,m-1-i)==s.substr(0,m-1-i)) //从i+1开始长度为m-1-i;从0开始长度为m-1-i;

{ count=i+1;

break;

}

}

cout<<count;

return 0;

}

相关推荐
垆边人似月.15 分钟前
华为机试题 :最大数
c++·算法·华为
zhenaibo52144 分钟前
如何与导师有效沟通选题?
算法
熊猫钓鱼>_>1 小时前
大学图论第 6 讲:网络流与二分图匹配——对偶性让瓶颈自己现形
开发语言·算法·面试·职场和发展·图论·校招·面经
没有钱的钱仔1 小时前
最大似然估计(MLE)通俗理解
算法·机器学习·概率论
yi0111 小时前
LeetCode 424. 替换后的最长重复字符|不定长滑动窗口:如何判断窗口是否合法?
笔记·python·算法·leetcode·双指针·滑动窗口
Nebula_g1 小时前
JavaSE高级:动态代理
java·开发语言·算法·javase
垆边人似月.1 小时前
华为题:盛最多水的容器
数据结构·算法
怦然丶心动2 小时前
用 Java 把干支历法算清楚:从节气切年到可读摘要
java·算法·vue·独立开发·spring boot / spring
Zachery Pole2 小时前
具身智能强化学习(1)引言
算法·机器学习
All for pursuit.2 小时前
【动态规划-11】279.完全平方数
数据结构·c++·算法·leetcode·动态规划