HDU - 单词数
发布日期:2021-07-01 00:12:54 浏览次数:2 分类:技术文章

本文共 996 字,大约阅读时间需要 3 分钟。

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

Problem Description

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

Input

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

Output

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

Sample Input

you are my friend

#

Sample Output

4

Problem solving report:

Description: 计算不同单词的总数。

Problem solving: 先将文章存入字符串中,然后按顺序分离出每个单词,判断单词是否存入过(即是否出现过),如果没存入就存下来。最终输出存入的单词数。

#include 
#include
int main(){ int len, p, i, j, flag; char s[110000], a[1100][110], b[110]; while (gets(s) && s[0] != '#') { j = p = 0; memset(b, 0, sizeof(b)); len = strlen(s); while (p < len) { sscanf(s + p, "%s", b); for (i = 0; i < j; i++) if (!strcmp(a[i], b)) break; if (i == j) strcpy(a[j++], b); for (i = p; s[i] == ' '; i++) p++; p += strlen(b) + 1; } if (!strlen(b)) printf("0\n"); else printf("%d\n", j); } return 0;}

转载地址:https://lzyws739307453.blog.csdn.net/article/details/79560493 如侵犯您的版权,请留言回复原文章的地址,我们会给您删除此文章,给您带来不便请您谅解!

上一篇:HDU - IP的计算
下一篇:HDU - 不可摸数

发表评论

最新留言

感谢大佬
[***.8.128.20]2024年04月27日 05时07分36秒