题解 | #字符统计#

字符统计

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

#include <stdio.h>

int main(){
    int nums[36],out[2][36],j,i,len,temp;
    char str[1000];
    while(scanf("%s",str)!=-1){
        len=strlen(str);
        memset(nums,0,36*4);
        for(i=0;i<len;i++) {
            if((str[i]>='a')&&(str[i]<='z'))
            nums[str[i]-'a'+10]++;
            if((str[i]>='0')&&(str[i]<='9'))
            nums[str[i]-'0']++;
        }
        len=0;
        for(i=0;i<36;i++){
           
            if(nums[i]!=0){
                out[0][len]=i;
                out[1][len]=nums[i];
                len++;
            }
        }
       
        for(i=0;i<len-1;i++){
            for(j=0;j<len-1-i;j++){
                if(out[1][j]<out[1][j+1]){
                    temp=out[1][j];
                    out[1][j]=out[1][j+1];
                    out[1][j+1]=temp;
                    temp=out[0][j];
                    out[0][j]=out[0][j+1];
                    out[0][j+1]=temp;
                }
            }
        }
   
        for(i=0;i<len;i++) {
            if(out[0][i]>=10)
            printf("%c",out[0][i]-10+'a');
            else printf("%c",out[0][i]+'0');
        }
        printf("\n");
    }
    
    
    
    return 0;
}
全部评论

相关推荐

06-27 12:30
延安大学 C++
实习+外包,这两个公司底层融为一体了,如何评价呢?
一表renzha:之前面了一家外包的大模型,基本上都能答出来,那面试官感觉还没我懂,然后把我挂了,我都还没嫌弃他是外包,他把我挂了……
第一份工作能做外包吗?
点赞 评论 收藏
分享
评论
点赞
1
分享

创作者周榜

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