单词数
1000ms
1000ms
32768KB
64-bit integer IO format:
%I64d Java class name:
Main
Font Size:
lily的好朋友xiaoou333最近很空,他想了一件没有什么意义的事情,就是统计一篇文章里不同单词的总数。下面你的任务是帮助xiaoou333解决这个问题。
Input
有多组数据,每组一行,每组就是一篇小文章。每篇小文章都是由小写字母和空格组成,没有标点符号,遇到#时表示输入结束。
Output
每组只输出一个整数,其单独成行,该整数代表一篇文章里不同单词的总数。
Sample Input
you are my friend #
Sample Output
4 同学使用map的代码:#include<iostream> #include<cstdio> #include<string> #include<cstring> #include<map> using namespace std; int main() { char s[1000]; int sum; map<string,int>str; while(gets(s)) { sum=0; str.clear(); string ss; if(s[0]=='#') { break; } int len = strlen(s); for(int i=0;i<len;i++) { ss=""; while(s[i]!=' '&&s[i]!='\0') { ss+=s[i]; i++; } if(ss!="") { ss+='\0'; if(str[ss]==0) { str[ss]=1; sum++; } } } printf("%d\n",sum); } return 0; }