题解 | #名字的漂亮度#

名字的漂亮度

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

  1. rbegin, rend. 可以递增排序。
  2. 刚开始全部转换为小写,方便以后统计。transform(s.begin(),s.end(),s.begin(),::tolower);//变成小写
  3. 漂亮度得定义://漂亮度 为 该字母出现得次数乘以26递减
#include<bits/stdc++.h>

using namespace std;

int main(){
    int n;

    while(cin>>n){
        vector<string> v;
        string s;
        for(int i=0; i< n;i++){
            cin>>s;
            transform(s.begin(),s.end(),s.begin(),::tolower);//变成小写
            v.push_back(s);
        }



        for(int i=0; i < v.size();i++){
            string str = v[i];
            map<char,int> m;//统计次数

            for(auto s: str){
                m[s]++;
            }

            vector<int> ve;//记录每一个字母出现得次数
            for(auto x: m){
                ve.push_back(x.second);
            }

            //从大到小进行排序(注意前面有r)
            sort(ve.rbegin(),ve.rend());

            int sum =0;

            for(int i =0, j = 26; i< ve.size();i++,j--){
                sum += ve[i]*j;//漂亮度 为 该字母出现得次数乘以26递减
            }
            cout<<sum<<endl;


        }

    }


    return 0;
}
大厂笔试题题解 文章被收录于专栏

主要是公司笔试题得一些总结

全部评论

相关推荐

04-28 15:42
郑州大学 C++
找工作勤劳小蜜蜂:网易这几个月在大面积裁员,外包岗全退,今年网易收缩严重,建议慎重考虑网易
点赞 评论 收藏
分享
05-23 19:33
重庆大学 Java
只学了传统后端,马上去后端实习了,在想要不要学习agent开发相关的。27秋招和26相比难度如何?
我连备胎都不是却还在...:就暑期实习而言,大厂官宣hc 比 26 多,但是我观察看应该低于 26 的,估计秋招也不简单
点赞 评论 收藏
分享
评论
点赞
收藏
分享

创作者周榜

更多
牛客网
牛客网在线编程
牛客网题解
牛客企业服务