集训队专题(1)1006 单词数
2016-01-27 14:55
316 查看
单词数
Time Limit : 1000/1000ms (Java/Other) Memory Limit : 32768/32768K (Java/Other)
Total Submission(s) : 48 Accepted Submission(s) : 16
Problem Description
lily的好朋友xiaoou333最近很空,他想了一件没有什么意义的事情,就是统计一篇文章里不同单词的总数。下面你的任务是帮助xiaoou333解决这个问题。
Input
有多组数据,每组一行,每组就是一篇小文章。每篇小文章都是由小写字母和空格组成,没有标点符号,遇到#时表示输入结束。
Output
每组只输出一个整数,其单独成行,该整数代表一篇文章里不同单词的总数。
Sample Input
you are my friend #
Sample Output
4
Author
Lily
Source
浙江工业大学网络选拔赛
此题我是觉得没有必要使用字典树,直接暴力就能过,当然用字典树也是能过的,小编看网上各种大神有用广搜的,有用母函数的,但小编个人觉得暴力解决此题最方便。
#include <stdio.h> #include <string.h> int main() { int n,i,j,k,o,sum,d; char a[1000],b[1000][100],c[1000][100]; while(gets(a)) { k=strlen(a); if(a[0]=='#') break; j=0; n=0; o=0; for(i=0;i<k;i++) { if(a[i]!=' ') { b[j] =a[i]; n++; o=1; } if(a[i]==' '&&o==1) { b[j] ='\0'; j++;n=0;o=0; } } if(i>0&&a[i-1]!=' ') { b[j] ='\0'; j++; } n=0; strcpy(c[0],b[0]); for(i=0;i<j;i++) { d=0; for(k=0;k<n;k++) { if(strcmp(c[k],b[i])==0) { d=1; break; } } if(d==0) { strcpy(c ,b[i]); n++; } } printf("%d\n",n); } return 0; }
相关文章推荐
- cmd命令行指定系统延迟关机时间
- phpQuery—基于jQuery的PHP实现
- servlet中Get&Post方法的比较
- 莫队算法
- VS2015快捷键
- 机器学习算法原理与实践(六)、感知机算法
- Good Bye 2015 D. New Year and Ancient Prophecy(dp+LCP)
- javaKMP算法
- Java递归算法
- SpringMVC基础-HelloWorld
- shell 脚本 测试webApp
- 验证思路(转)
- Java8新特性
- java tomcat 远程调试 在服务器上debug
- ActiveMQ 主备
- 快速理解聚集索引和非聚集索引
- 星星之火可以燎原
- poj2411 Mondriaan's Dream 状压dp
- 关于Eclipse项目中js文件报错(missing semicolon)
- git 如何让单个文件回退到指定的版本(转)