您的位置:首页 > 其它

UVA_10815: Andy's First Dictionary

2015-10-05 11:04 323 查看
Input

The input file is a text with no more than 5000 lines. An input line has at most 200 characters. Input is terminated by EOF.

Output

Your output should give a list of different words that appears in the input text, one in a line. The words should all be in lower case, sorted in alphabetical order. You can be sure that he number of distinct words in the text does not exceed 5000.

SampleInput

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.

SampleOutput

a

adventures

blondes

came

disneyland

fork

going

home

in

left

read

road

sign

so

the

they

to

two

went

were

when

分析:本题主要考察STL的应用,利用set和string可以很快的完成

#include <iostream>
#include <string>
#include <set>
#include <sstream>

using namespace std;

set<string> dict;

int main()
{
string s, buf;
while(cin >> s)
{
for(int i=0; i<s.length(); i++)
if(isalpha(s[i]))s[i]=tolower(s[i]);
else s[i]=' ';
stringstream ss(s);
while(ss >> buf) dict.insert(buf);
}

for(set<string>::iterator it = dict.begin(); it!=dict.end(); it++)
cout << *it << "\n";
return 0;
}
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: