#include<iostream>
#include<string>
#include<map>
using namespace std;
//例题10.9 子串计算
int main()
{ //10101
string s;
while (cin >> s) {
map<string, int> maps;
for (int i = 0; i < s.size(); i++) {
for (int j = 1; i + j <= s.size(); j++) {
string s1 = s.substr(i, j);
if (maps.find(s1) == maps.end()) {
maps[s1] = 0;
}
maps[s1] += 1;
}
}
for (auto it : maps) {
if (it.second > 1) {
cout << it.first << " " << it.second << endl;
}
}
}
return 0;
}

京公网安备 11010502036488号