现代诗如蚯蚓

645 词

题目描述

现代诗如蚯蚓
断成好几截都不会死
字符串断成好几截
有可能完全一样
请编写程序
输入字符串
输出该字符串最多能断成多少截完全一样的子串

输入

一行,一个字符串 

输出

一行,一个正整数表示该字符串最多能断成的截数 

样例输入

1
abcabcabcabc

样例输出

1
4

提示

样例说明 
最多能断成四个“abc”,也就是abc重复四遍便是原串 
同时也能断成两个“abcabc” 
最坏情况是断成一个原串“abcabcabcabc” 
数据规模和约定 
字符串长度$<= 1000$ 

题解

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
#include<iostream>
using namespace std;
int main() {
string s;
cin >> s;
int len = int(s.length());
for (int i = 1; i <= len / 2; i++) {
if (len % i == 1) {
continue;
}
string tem1, tem2;
int flag = 0;
tem1 = s.substr(0, i);
for (int j = i; j < len; j += i) {
tem2 = s.substr(j, i);
if (tem1 != tem2) {
flag = 1;
break;
}
}
if (flag == 0) {
cout << len / i;
break;
}
}
return 0;
}