题解 | #名字的漂亮度# vector+mp
名字的漂亮度
https://www.nowcoder.com/practice/02cb8d3597cf416d9f6ae1b9ddc4fde3
#include <iostream> #include <vector> #include <algorithm> #include <unordered_map> using namespace std; int main() { int n; cin>>n; while(n--){ string s; cin>>s; unordered_map<char , int>mp; vector<int> vc; for(int i=0;i<s.length();i++){ mp[s[i]]++; } for(auto it=mp.begin();it!=mp.end();++it){ if(it->second!=0) vc.push_back(it->second); } sort(vc.begin(),vc.end(),greater<int>()); int sum=0; int k=0; for(auto i=vc.begin();i!=vc.end();++i){ sum+=(26-k)* *i; k++; } cout<<sum<<endl; } } // 64 位输出请用 printf("%lld")