统计一篇文章里不同单词的总数

Input

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

Output

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

 

和uva10815感觉差不多,只是需要对每一行进行一次判断,因为cin不能读取换行所以就用gets了,好像用别的更好但是懒得换了就这样吧

#include 
#include 
#include 
#include 
#include 
using namespace std;
int main()
{
	string b;
	char s[10000];
	while(gets(s)!=NULL)
	{
		set dict;
		if(s[0]=='#')break;
		stringstream ss(s);
		while(ss>>b)
		{
			dict.insert(b);
		}
		int i=0;
		for(set::iterator it=dict.begin();it!=dict.end();++it)
		{
			i++;
		}
		printf("%d\n",i);
	}
	return 0;
}

 

你可能感兴趣的:(统计一篇文章里不同单词的总数)