HDU-2072(单词数)

Source

题目:单词数

Problem Description

lily的好朋友xiaoou333最近很空,他想了一件没有什么意义的事情,就是统计一篇文章里不同单词的总数。下面你的任务是帮助xiaoou333解决这个问题。

Input

有多组数据,每组一行,每组就是一篇小文章。每篇小文章都是由小写字母和空格组成,没有标点符号,遇到#时表示输入结束。

Output

每组只输出一个整数,其单独成行,该整数代表一篇文章里不同单词的总数。

Sample Input

you are my friend

Sample Output

4

题目思路:

题目要求输出一行英文句子中不同单词数
一行容易想到用getline
不同单词数容易想到用set

AC代码:

#include <iostream>
#include<string>
#include<sstream>
#include<set>
using namespace std;
char a[100][50];
int main()
{
    string a,word;
    while(getline(cin,a))
    {
        if(a=="#")
            break;
        int n=0;
        stringstream s(a);
        set<string> words;
        while(s>>word)
        {
            words.insert(word);
        }
        cout<<words.size()<<endl;
    }
    return 0;
}