码迷,mamicode.com
首页 > 其他好文 > 详细

单词数 (set)

时间:2014-09-24 20:35:28      阅读:234      评论:0      收藏:0      [点我收藏+]

标签:style   blog   color   io   os   ar   for   数据   div   

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

Input

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

Output

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

Sample Input

you are my friend
#

Sample Output

4


思路: 字典树还是可以解决这个问题的,但是最近新学了STL 所以就用set来解决这个问题了


set 可以理解为是数学的集合了,所以关于集合的概念 就去问自己的高中老师吧



直接AC代码:

#include<iostream>
#include<string>
#include<set>
#include<sstream>
using namespace std;
set <string> dict;

int main()
{
    string s,buff;
    while(getline(cin,s))
    {
        dict.clear();
        int tot=0;
        if(s[0]=='#')
            break;
        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>>buff)
        {
            dict.insert(buff);
        }
        for(set<string>::iterator it=dict.begin();it!=dict.end();++it)
        {
            tot++;
        }
        cout<<tot<<endl;
    }
    return 0;
}


单词数 (set)

标签:style   blog   color   io   os   ar   for   数据   div   

原文地址:http://blog.csdn.net/u012313382/article/details/39526973

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!