stl-vector
#include<iostream> #include<vector> #include<string> using namespace std; //unordered_map<char,vector<int>> mp; map是hash表,不能保证插入顺序(弃用) struct st{ char a; vector<int> index; st(char aa,int i){ a=aa; index.push_back(i); } };vector<st> vec;string s;int j; int main(){ while(cin>>s){ vec.clear(); for(int i=0;i<s.size();i++){ for(j=0;j<i;j++){ if(vec[j].a==s[i]){ vec[j].index.push_back(i);break; } }if(j==i)vec.push_back(st(s[i],i)); }for(int i=0;i<vec.size();i++){ if(vec[i].index.size()>1){ for(int j=0;j<vec[i].index.size();j++){ if(j==0)printf("%c:%d",vec[i].a,vec[i].index[j]); else printf(",%c:%d",vec[i].a,vec[i].index[j]); }printf("\n"); } } } return 0; }