题解 | #名字的漂亮度#

名字的漂亮度

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

#include <stdio.h>
struct beauty{
    char a;
    int n;
};
int main() {
    int i,n;
    scanf("%d",&n);
    for(i=0;i<n;i++){
        char a[10000],b;
        int m=0,j,k,p;
        scanf("%s",a);
        while(a[m]!=0)m++;
        //初步排序
        for(j=0;j<m-1;j++)
        for(k=0;k<m-j-1;k++)
        if(a[k]>a[k+1]){
            b=a[k];
            a[k]=a[k+1];
            a[k+1]=b;
        }
        //数据导入结构体
        struct beauty t[m],temp;
        for(j=0;j<m;j++)
        t[j].a=a[j];
        //开始计数
        for(j=0;j<m;j++){
            p=0;
            for(k=0;k<m;k++)
                if(a[j]==a[k])
                p++;
            t[j].n=p;
        }
        //去除重复
        for(j=0;j<m;j++)
        if(t[j].a==t[j+1].a){
            for(k=j;k<m;k++)
                t[k]=t[k+1];
            j--;
            m--;
        }
        //再次排序
        for(j=0;j<m-1;j++)
        for(k=0;k<m-j-1;k++)
        if(t[k].n<t[k+1].n){
            temp=t[k];
            t[k]=t[k+1];
            t[k+1]=temp;
        }
        //计算漂亮度
        int pl=0;
        for(j=0;j<m;j++)
        pl=pl+(26-j)*t[j].n;
        //输出
        printf("%d\n",pl);       
    }
    return 0;
}

全部评论

相关推荐

03-06 20:09
贵州大学 Java
King987:你这个学历找个中大厂刷实习经历都是可以的,但是项目要有亮点才行,这个什么外卖就不要做了,去找找最新的项目,至少涉及高并发或者是新型的AI技术mcp rag啥的 ,我在出简历点评,但是你这个没什么好点评的,内容太少,而且含金量太低。自己改一改吧,或者看一下我的项目地址中,那里有大厂最近做过的实习项目
点赞 评论 收藏
分享
评论
点赞
收藏
分享

创作者周榜

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