您的位置:首页 > 其它

HDOJ 2072 单词数【字符串】

2015-07-26 22:00 211 查看


单词数

Time Limit: 1000/1000 MS (Java/Others) Memory Limit: 32768/32768 K (Java/Others)

Total Submission(s): 36060 Accepted Submission(s): 8721



Problem Description

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

Input

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

Output

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

Sample Input

you are my friend
#


Sample Output

4


/*解题思路:用2维数组存1维数组,比较时只用比 行 地址即可,充分使用 strcmp 函数*/

代码:
#include<stdio.h>
#include<string.h>
char a[1000];
char b[200][200];
int main()
{
int i,l;
while(gets(a)&&strcmp(a,"#")!=0)
{
l=strlen(a);
i=0;
int g=0,h=0;
while(i<l)
{
if(a[i]==' ')
{
i++;
}

else
{
for( ; a[i]!=' '&&a[i]!='\0' ;h++,i++ )
{
b[g][h]=a[i];
}
b[g][h]='\0';
h=0;
g++;
}
}
int j,k,n=0;
for(j=0;j<g;j++)
{
int f=0;
for(k=j+1;k<g;k++)
{
if(strcmp(b[j],b[k])==0)
f=1;
}
if(!f)
n++;
}
printf("%d\n",n);
}
return 0;
}
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: