暑假培训习题
1.用vector<string>储存string类型的输入单词;
2.将vector中的元素逐一标准化后映射进map中,并给map值加一;
3.新建一个空的vector
4.标准化之前的vector中的元素,并查看map中的值,如果是一,则把这个元素压入新的vector中,给新的vector排序并输出;
#include<stdio.h>
#include<map>
#include<string>
#include<algorithm>
#include<map>
#include<string>
#include<vector>
#include<iostream>
using namespace std;
map<string,int> mp;
vector<string> cun,xin;
string bz(string ss)
{
transform(ss.begin(),ss.end(),ss.begin(),::tolower);//把string类型中的元素全部转换成小写
sort(ss.begin(),ss.end());
return ss;
}
int main()
{
string ss,st;
char s[100];
while(scanf("%s",s)!=EOF)
{
ss=s;
if(ss=="#")
break;
cun.push_back(ss);
st=bz(ss);
mp[st]++;
}
vector<string>::iterator it;
for(it=cun.begin();it!=cun.end();it++)
{
st=bz(*it);
if(mp[st]==1)
xin.push_back(*it);
}
sort(xin.begin(),xin.end());
for(it=xin.begin();it!=xin.end();it++)
cout<<*it<<endl;
return 0;
}