题解 | #名字的漂亮度#

数据结构学的贼差.

#include 
#include 
void bubble_sort(int *arrin, unsigned int len)
{
    int i = 0, j = 0;
    int tmp = 0;
    for(i = 0; i < len; i++) {
        for(j = i; j < len; j++) {
            if(arrin[i] < arrin[j]) {
                tmp = arrin[i];
                arrin[i] = arrin[j];
                arrin[j] = tmp;
            }
        }
    }
}
int main(void)
{
    int n = 0;
    int i = 0, j = 0;
    char string[10000] = "\0";
    int sflag[26] = { 0 };
    unsigned long sum = 0;
    int len = 0;
    scanf("%d", &n);

    for(i = 0; i < n; i++) {
        memset((void *)string, 0x00, sizeof(string));
        memset(sflag, 0x00, sizeof(sflag));
        sum = 0;
        j = 0;
        //get string
        scanf("%s\n", string);

        //cal repeat max
        len = strlen(string);
        for(j = 0; j < len; j++) {
            if((string[j] >= 'A') && (string[j] <= 'Z')) {
                string[j] += ('a' - 'A');
            }
            sflag[string[j] - 'a'] += 1;
        }
        //sort sflag
        bubble_sort(sflag, 26);

        for(j = 26; j > 0; j--) {
            sum += sflag[26-j] * j;
            if(0 == sflag[26 - j]) {
                break;
            }
        }

        printf("%ld\n", sum);
    }

    return 0;
}
全部评论

相关推荐

点赞 评论 收藏
转发
点赞 收藏 评论
分享
牛客网
牛客企业服务