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

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

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

#include<bits/stdc++.h>
using namespace std;
int main() {
    string text;
    while(cin>>text){
        cin.get();
        int min=0;
        map<char, int> m;
        map<char, int>::iterator it;
        vector<int> vec;
        for(int i=0;i<text.length();i++) {
            it = m.find(text[i]);
            if(it != m.end()) {
                it->second++;
            }
            else {
                m[text[i]] = 1;
            }
        }
        for(it=m.begin();it != m.end();it++) {
            vec.push_back(it->second);
        }
        min = *min_element(vec.begin(), vec.end());
        for(it=m.begin();it != m.end();it++) {
            if(it->second == min) {
                //删除text字符串中指定的字符
                text.erase(remove(text.begin(), text.end(), it->first), text.end());
            }
        }
        cout<<text<<endl;
    }

    return 0;
}
全部评论

相关推荐

牛客101244697号:这个衣服和发型不去投偶像练习生?
点赞 评论 收藏
分享
不愿透露姓名的神秘牛友
11-20 19:57
已编辑
某大厂 golang工程师 23.0k*16.0, 2k房补,年终大概率能拿到
点赞 评论 收藏
分享
2 收藏 评论
分享
牛客网
牛客企业服务