原题链接:https://vjudge.net/problem/UVA-10815
分类:<set>
备注:set的使用
前言:在这里第一次看到STL的迭代器。
注意:题目可能一次性输入多个单词但是间隔这些单词的不是空格而是其它字符。
代码如下:
#include<iostream>
#include<sstream>
#include<string>
#include<cctype>
#include<set>
using namespace std;
int main(void)
{
string s;
set<string>dict;
while (cin >> s)
{
for (int i = 0; i < s.length(); i++)
if (!isalpha(s[i]))s[i] = ' ';
else s[i] = tolower(s[i]);
stringstream ss(s);
while (ss >> s)if (!dict.count(s))dict.insert(s);
}
for (set<string>::iterator it = dict.begin(); it != dict.end(); ++it)
cout << *it << "\n";
return 0;
}