题解 | #删除字符串中出现次数最少的字符#

删除字符串中出现次数最少的字符

https://www.nowcoder.com/practice/05182d328eb848dda7fdd5e029a56da9

#include <stdio.h>
#include <string.h>
#define Min(x,y) (x<y?x:y)

int main() {
    char str[21];
    scanf("%s",str);
    int t[21];
    for(int i=0;i<21;i++)
    {
        t[i]=1;
    }
    int m[21];
    for(int i=0;i<21;i++)
    {
        m[i]=1;
    }
    int l;
    l=strlen(str);
        for(int i=0;i<l;i++){
            for(int j=i+1;j<l;j++)
            {
                if((t[j]!=0)&&(str[i]==str[j]))
                {
                    t[i]++;
                    t[j]=0;
                }
            }
        }
    int min;
    min=20;
    for(int i=0;i<l-1;i++)
    {
        if(t[i]!=0&&t[i+1]!=0)
        {       int a;
                a=Min(t[i],t[i+1]);
                min=Min(min,a);
                }
            
        
    }
    for(int i=0;i<l;i++)
    {
        if(t[i]==min)
        {
            for(int j=0;j<l;j++){
                if(str[i]==str[j])
                {
                    m[j]=0;
                }
            }
        }
    }  
    for(int i=0;i<l;i++)
    {
        if(m[i]!=0)
        {
            printf("%c",str[i]);
        }
    }  

}

全部评论

相关推荐

牛客717484937号:双飞硕没实习挺要命的
点赞 评论 收藏
分享
10-11 17:45
门头沟学院 Java
走吗:别怕 我以前也是这么认为 虽然一面就挂 但是颇有收获!
点赞 评论 收藏
分享
评论
点赞
收藏
分享
牛客网
牛客企业服务