题解 | #字符统计#

字符统计

https://www.nowcoder.com/practice/c1f9561de1e240099bdb904765da9ad0

//虽然稍微麻烦一点,但时间和空间上都有所节省,ascii要相对熟练
#define _CRT_SECURE_NO_WARNINGS 1
#include <stdio.h>
#include<string.h>
int main()
{
    char arr[1000], arr2[36];
    scanf("%s", arr);
    int i = 0, j = 0, p[36] = { 0 }, sz = strlen(arr), num = 0;
    for (i = 0; i < sz; i++)
    {
        if (arr[i] >= '0' && arr[i] <= '9')
        {
            p[arr[i]-48]++;
            num = num > p[arr[i]-48] ? num : p[arr[i]-48];
        }
        else
        {
            p[arr[i] - 87]++;
            num = num > p[arr[i] - 87] ? num : p[arr[i] - 87];
        }
    }
    for (j = num; j > 0; j--)
    {
        for (i = 0; i < 10; i++)
        {
            if (p[i] == j)
            {
                printf("%d", i);
            }
        }
        for (i = 10; i < 36; i++)
        {
            if (p[i] == j)
            {
                printf("%c", i + 87);
            }
        }
    }
    return 0;
}

全部评论

相关推荐

1 1 评论
分享
牛客网
牛客企业服务