题解 | 名字的漂亮度
名字的漂亮度
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;
}
查看11道真题和解析