#include<iostream>
#include<set>
#include<algorithm>
#include<string.h>
#include<string>
using namespace std;
typedef long long LL;
int main(){
string s1,s2;
set <string> ss;
while(cin>>s1){
for(int i=0;i<s1.size();i++){
if(isalpha(s1[i])){
s1[i]=tolower(s1[i]);
s2+=s1[i];
}
else{
if(s2.size()){//非常重要,否则输出一个空行。
ss.insert(s2);
s2.clear();
}
}
}
if(s2.size()){同理一定要判断一下是不是空
ss.insert(s2);
s2.clear();
}
}
set <string>::iterator it;
for(it=ss.begin();it!=ss.end();it++){
cout<<*it<<endl;
}
}
先将字符串用一个string 存储,再遍历string。如果是字母,就转成小写加到另一个string中。如果不是,便将另一个string中的加到set中。遍历完成后,将答案加到set中。注意判断为空。