天天看点

华为机试——删除字符串中出现次数最少的字符

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

实现删除字符串中出现次数最少的字符,若多个字符出现次数一样,则都删除。输出删除这些单词后的字符串,字符串中其他字符保持原来的顺序

格式说明: 字符串只包含字母,不可能为空串,不包含空格,单词只由小写英文字母组成,输入的字符串长度不会超过20个char 。

#include<iostream>
#include<string>
using namespace std;

int main()
{
    int hash[]={};
    int min;
    string input,output;
    cin>>input;
    string::size_type i;
    for(i=;i<input.size();i++)
        hash[input[i]-'a']++;
    min=input.size();
    for(i=;i<;i++)
        if(hash[i]<min&& hash[i]!=)
            min=hash[i];
    for(i=;i<input.size();i++)
        if(hash[input[i]-'a']>min)
            output+=input[i];
    cout<<output<<endl;
}