Description
Submission
class Solution { public: int longestPalindrome(vector<string>& words) { unordered_map<string, int> Map; int ret = 0; for(auto& word: words) { string reversed = word.substr(1, 1) + word.substr(0, 1); if(Map[reversed] > 0) { --Map[reversed]; ret += 4; } else { ++Map[word]; } } for(auto& [word, freq]: Map) { if(word[0] == word[1] && freq > 0) { ret += 2; break; } } return ret; } };