题解 | 名字的漂亮度

名字的漂亮度

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

#include <stdio.h>
#include <stdlib.h>
#include <string.h>

int compare(const void *a, const void *b)
{
    return (*(int *)b) - (*(int *)a);
}

int main()
{
    int T = 0;
    scanf("%d", &T);
    getchar();

    int zimu[30] = {0};
    char ch;

    for (int i = 0; i < T; i++)
    {
        int sum = 0;
        int quan = 26;
        while ((ch = getchar()) != '\n' && ch != EOF)
        {
            zimu[ch - 'a']++;
        }
        qsort(zimu, (sizeof(zimu) / sizeof(zimu[0])), sizeof(int), compare);
        for (int j = 0; quan > 0; quan--, j++)
        {
            sum += (zimu[j] * quan);
        }
        printf("%d\n", sum);
        memset(zimu, 0, sizeof(zimu));
    }

    return 0;
}

全部评论

相关推荐

点赞 评论 收藏
分享
评论
点赞
收藏
分享

创作者周榜

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