HDOJ2072单词数
来源:互联网 发布:windows whistler2296 编辑:程序博客网 时间:2024/06/05 18:52
Problem Description
lily的好朋友xiaoou333最近很空,他想了一件没有什么意义的事情,就是统计一篇文章里不同单词的总数。下面你的任务是帮助xiaoou333解决这个问题。
Input
有多组数据,每组一行,每组就是一篇小文章。每篇小文章都是由小写字母和空格组成,没有标点符号,遇到#时表示输入结束。
Output
每组只输出一个整数,其单独成行,该整数代表一篇文章里不同单词的总数。
Sample Input
you are my friend
#
Sample Output
4
AC代码
#include<stdio.h>#include<string.h>int main(){ int n,i,len,k,t,j; char s[1000]; char str[100][100]; while(gets(s)&&s[0]!='#'){ n=0; char *p; p=strtok(s," "); for(k=0;p!=NULL;k++) { strcpy(str[k],p); p=strtok(NULL," "); } //用strtok函数分解字符串------------------------------------ for(i=0;i<k;i++){ for(j=i+1;j<k;j++) { if(strcmp(str[i],str[j])==0){ n++;//n为重复的单词 break; } } } printf("%d\n",k-n); } return 0;}
我开始用自己写的函数分解字符串,将每个单词存入二维字符数组中,结果超时:
超时代码:
#include<stdio.h>#include<string.h>int main(){ int n,i,len,k,t,j; char s[1000]; char str[100][100]; while(gets(s)&&s[0]!='#'){ n=0; len=strlen(s); k=0; for(i=0;i<len;i++){ t=0; if(s[i]!=' '){ while(s[i]!=' '){ str[k][t++]=s[i]; i++; } k++; } else i++; } //将每个单词存入str数组中; //分解字符串------------------------------------ for(i=0;i<k;i++){ for(j=i+1;j<k;j++) { if(strcmp(str[i],str[j])==0){ n++;//n为重复的单词 break; } } } printf("%d\n",k-n); } return 0;}
strtok函数的使用:
Strtok()函数详解:
该函数包含在”string.h”头文件中
函数原型:
char* strtok (char* str,constchar* delimiters );
函数功能:
切割字符串,将str切分成一个个子串
函数参数:
str:在第一次被调用的时间str是传入需要被切割字符串的首地址;在后面调用的时间传入NULL。
delimiters:表示切割字符串(字符串中每个字符都会 当作分割符)。
函数返回值:
当s中的字符查找到末尾时,返回NULL;
如果查不到delimiter所标示的字符,则返回当前strtok的字符串的指针。
#include<stdio.h>#include<string.h>int main(void){ char buf[]="hello@boy@this@is@heima"; char*temp = strtok(buf,"@"); while(temp) { printf("%s ",temp); temp = strtok(NULL,"@"); } return0;}
阅读全文
0 0
- hdoj2072字符串单词数
- HDOJ2072单词数
- HDOJ2072单词数
- HDOJ2072 单词数
- HDOJ2072 单词数
- HDOJ2072单词数 解题报告
- hdoj2072 单词数 (set 和 map 两种做法)
- HDOJ2072(单词数)(strtok函数分解字符串)
- HDOJ2072 单词个数
- 数单词
- 单词数
- 单词数
- 数单词
- 单词数
- 单词数
- 单词数
- 单词数
- 单词数
- Cassandra错误总结
- for in、for of、forEach的区别
- Java中 方法的定义与使用
- hdu2063(二分图最大匹配)
- ffmpeg下载
- HDOJ2072单词数
- 第五章 编程小事
- Hibernate学习笔记 之 configuration、sessionFactory、session
- dubbo 5 Listener和Filter
- bzoj 4004
- 【推荐系统】推荐系统重要会议和期刊
- 韩版宠物问题
- 滤波算法(其他博客)
- JaxWsServiceFactoryBean与JaxWsServerFactoryBean区别(创建webService)