C++ 代码
#include <iostream>
#include <string>
using namespace std;
int main() {
string s;
while (cin >> s, s != ".") {
int len = s.size(), n = 1; // 默认找不到以下子串
for (int i = 1; i < len; i++) { // i为子串长度
if (len % i == 0) { // 找一个最小的约数,设为最小串长度
string b;
int m = 0; // 第0节
while (b.size() < s.size()) {
b += s.substr(0, i); // 尝试用最小串构建大串
m++; // 第1节
}
if (b == s) { n = m; break; }
}
}
cout << n << endl;
}
return 0;
}