#include<iostream>
using namespace std;
#include<string>
#include<map>
//map用于存储键值对,map默认按照升序排序,基于 < 运算符
int main() {
string s;
cin >> s;
map<string, int>m;//string类型是键,int类型是值
for (int i = 0; i < s.size(); i++) {//此步遍历所有子串,并统计数目
for (int j = 1; j <= s.size() - i; j++) {
m[s.substr(i, j)]++;//substr(pos, len)
}
}
for (auto it = m.begin(); it != m.end(); it++) {
if (it->second > 1)
cout << it->first << " " << it->second << endl;
}
return 0;
}

京公网安备 11010502036488号