#include <iostream>
#include<map>
#include<vector>
using namespace std;
map<string , vector<string>> mp;
string encode(string s)
{
int even[26]={0};
int odd[26]={0};
string encoding="";
for(int i =0 ;i < s.length(); i++)
{
even[s[i] - 'a']++;
}
for(int i =0 ;i< 26 ;i++)
{
encoding+=to_string(even[i]);
encoding+="-";
}
mp[encoding].push_back(s);
return encoding;
}
int main() {
vector<string> words ={"plea", "pale", "test", "pela"};
string x = "pale";
x= encode(x);
for(auto it: words)
encode(it);
/* for(auto it : mp)
{
cout << it.first << " =";
for(auto it1 : it.second)
cout << it1 << " ";
cout << endl;
}*/
vector<string> res= mp[x];
for(auto it: res)
cout << it << endl;
// your code goes here
return 0;
}
I2luY2x1ZGUgPGlvc3RyZWFtPgojaW5jbHVkZTxtYXA+CiNpbmNsdWRlPHZlY3Rvcj4KdXNpbmcgbmFtZXNwYWNlIHN0ZDsKbWFwPHN0cmluZyAsIHZlY3RvcjxzdHJpbmc+PiBtcDsKCnN0cmluZyBlbmNvZGUoc3RyaW5nIHMpCnsKCWludCBldmVuWzI2XT17MH07CglpbnQgb2RkWzI2XT17MH07CgkKCXN0cmluZyBlbmNvZGluZz0iIjsKCQoJZm9yKGludCBpID0wIDtpIDwgcy5sZW5ndGgoKTsgaSsrKQoJewoJCWV2ZW5bc1tpXSAtICdhJ10rKzsKCX0KCQoJZm9yKGludCBpID0wIDtpPCAyNiA7aSsrKQoJewoJCWVuY29kaW5nKz10b19zdHJpbmcoZXZlbltpXSk7CgkJZW5jb2RpbmcrPSItIjsKCX0KCQoJbXBbZW5jb2RpbmddLnB1c2hfYmFjayhzKTsKCXJldHVybiBlbmNvZGluZzsKfQoKaW50IG1haW4oKSB7CgkKCXZlY3RvcjxzdHJpbmc+IHdvcmRzID17InBsZWEiLCAicGFsZSIsICJ0ZXN0IiwgInBlbGEifTsKCXN0cmluZyB4ID0gInBhbGUiOwoJeD0gZW5jb2RlKHgpOwoJCglmb3IoYXV0byBpdDogd29yZHMpCgllbmNvZGUoaXQpOwoJCgkKLyoJZm9yKGF1dG8gaXQgOiBtcCkKCXsKCQljb3V0IDw8IGl0LmZpcnN0IDw8ICIgPSI7CgkJZm9yKGF1dG8gaXQxIDogaXQuc2Vjb25kKQoJCWNvdXQgPDwgaXQxIDw8ICIgIjsKCQkKCQljb3V0IDw8IGVuZGw7Cgl9Ki8KCXZlY3RvcjxzdHJpbmc+IHJlcz0gbXBbeF07CgkKCWZvcihhdXRvIGl0OiByZXMpCgljb3V0IDw8IGl0IDw8IGVuZGw7CgkKCS8vIHlvdXIgY29kZSBnb2VzIGhlcmUKCXJldHVybiAwOwp9