Set操作以及stringstream
汝佳p112
输入一个文本,找出所有不同的单词(连续的字母序列),按字母序从小到大输出,单词不区分大小写。
Sample Input
Adventures in Disneyland
Two blondes were going to Disneyland when they came to a fork in the road. The sign read: “Disneyland Left.”
So they went home.
Sample out
a
adventures
blondes
came
disneyland
fork
going
home
in
left
read
road
sign
so
the
they
to
two
went
were
when
#include <iostream>
#include<set>
#include<sstream>
#include<cctype>
using namespace std;
int main(int argc, char *argv[])
{
string s,word;
set<string> a;
typedef set<string> Set;
while(cin>>s)
{
for(int i=0;i<s.size();i++)
if(isalpha(s[i])) s[i]=tolower(s[i]);
else s[i]=' ';
stringstream ss(s);
while(ss>>word)
a.insert(word);
}
for(Set::iterator it=a.begin();it!=a.end();it++)
cout<<*it<<endl;
return 0;
}