51Nod-1182-完美字符串

来源:互联网 发布:java ee api下载 编辑:程序博客网 时间:2024/05/17 07:19

ACM模版

描述

描述

题解

先进行大小写转换并统计各字母出现次数,然后排序,最后按出现次数的顺序分配权值,出现次数越多,权值越大,累加即可。

代码

#include <iostream>#include <cstdio>#include <string>#include <algorithm>using namespace std;string S;int letter[100] = {0};int main(int argc, const char * argv[]){    while (cin >> S)    {        for (int i = 0; i < S.length(); i++)        {            if (S[i] > 90)            {                S[i] -= 32;            }            letter[S[i]]++;        }        sort(letter + 65, letter + 91);        int val = 26;        int ans = 0;        for (int i = 90; i >= 65; i--)        {            ans += letter[i] * val--;        }        printf("%d\n", ans);    }    return 0;}
0 0