题解 | #名字的漂亮度#

名字的漂亮度

https://www.nowcoder.com/practice/02cb8d3597cf416d9f6ae1b9ddc4fde3

#include <iostream>
using namespace std;
#include<set>
#include<algorithm>
#include<vector>
int main() {
    int a;
    cin>>a;
    vector<int>v;
    for(int i=0;i<a;i++){
        string str;
        cin>>str;
        multiset<int,greater<int>>s;
        for(int j=0;j<str.size();j++){
            int number = count(str.begin(),str.end(),str[j]);
            s.insert(number);
        }int num=26;
        int sum=0;
        for(multiset<int,greater<int>>::iterator it=s.begin();it!=s.end();it++){
            sum =*it*num+sum;
            for(int i=1;i<*it;i++){
                it++;
            }
            num--;
        }v.push_back(sum);
    }for(vector<int>::iterator it=v.begin();it!=v.end();it++){
        cout<<*it<<endl;
    }

}
// 64 位输出请用 printf("%lld")

全部评论

相关推荐

某物流公司 软件开发岗 总包26-30
点赞 评论 收藏
转发
点赞 收藏 评论
分享
牛客网
牛客企业服务