题解 | #名字的漂亮度#
名字的漂亮度
http://www.nowcoder.com/practice/02cb8d3597cf416d9f6ae1b9ddc4fde3
查找相同字符时,不要忘了两个相同字符在一起的情况
#include<iostream>
#include<string>
#include<vector>
#include<algorithm>
using namespace std;</algorithm></vector></string></iostream>
int main()
{
int N;
cin>>N;
string str;
for(int i = 0;i<N;i++)
{
cin>>str;
vector<int> t;
for(int j = 0;j<str.size();j++)
{
t.push_back(1);
for(int k = j+1;k<str.size();k++)
{
if(str[j] == str[k] || (str[j]-str[k]) == 32 ||(str[j]-str[k]) == -32)
{
++t[j];
str.erase(str.begin()+k);
k = k-1;
}
}
}
sort(t.begin(),t.end());
int sum = 0,r =26;
for(int i = t.size()-1;i>=0;i--)
{
//cout<<t[i]<<endl;
sum = sum+t[i]*r;
--r;
}
cout<<sum<<endl;</int>
}
}
查看2道真题和解析