stl map函数练练手的题目

来源:互联网 发布:营业执照怎么制作软件 编辑:程序博客网 时间:2024/05/28 15:27

http://www.bnuoj.com/v3/problem_show.php?pid=17295

题意明确,就是给一堆单词,不分大小写,请你输出某些不能重新排序组合成为其他任何单词的单词

map函数使用方法初get

#include<iostream>#include<algorithm>#include<cstring>#include<map>#include<vector>#include<string>#include<cmath>using namespace std;map<string,int>coun;vector<string> ss;string chuan(string f){    int i;    for(i=0;i<f.length();i++)    {        f[i]=tolower(f[i]);    }    sort(f.begin(),f.end());    return f;}int main(){    string s;    int i;    while(cin>>s)    {        if(s[0]=='#')break;        string los=chuan(s);        ss.push_back(s);        sort(los.begin(),los.end());        if(coun.count(los)==0)        coun[los]=0;        coun[los]++;    }        vector<string>ans;        for(i=0;i<ss.size();i++)        {            if(coun[chuan(ss[i])]==1)            {ans.push_back(ss[i]);}        }        sort(ans.begin(),ans.end());        for(i=0;i<ans.size();i++)        cout<<ans[i]<<endl;    return 0;}



0 0
原创粉丝点击