您的位置:首页 > 其它

51nod 1182 完美字符串

2016-03-06 14:01 239 查看
声明一个数组来存字符串每个字符出现的次数。然后用一下sort()就好了。

#include <iostream>
#include <cctype>
#include <cstdio>
#include <cstring>
#include <algorithm>

const int MAX = 1e5 + 5;
char arr[MAX];
int sum[150];

int main()
{
scanf("%s", arr);
int lenth = strlen(arr);
for (int i = 0; i < lenth; ++i)
{
sum[tolower(arr[i])]++;
}
std::sort(sum + 'a', sum + 'a' + 26);
int res = 0, score = 26;
for (int i = 'a' + 25; i >= 'a' && sum[i]; --i)
{
res += (sum[i] * (score--));
}
std::cout << res << std::endl;
return 0;
}
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: