#include <iostream>
#include <cstring>
#include <map>
using namespace std;
int main() {
string str;
cin>>str;
map<string,int> m;
for(int i=0;i<str.size();i++){
for(int j=1;j<=str.size()-i;j++){
m[str.substr(i,j)]++;//获取字符串中从第i位开始的长度为j的字符串
}
}
//map由红黑树实现,自动按照key值从小到大排序
map<string,int>:: iterator it=m.begin();
for(it=m.begin();it!=m.end();it++){
if(it->second>1){
cout<<it->first<<" "<<it->second<<endl;
}
}
return 0;
}

京公网安备 11010502036488号