题解 | #名字的漂亮度# 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")
查看3道真题和解析