校赛B 长单词
来源:互联网 发布:一个淘宝网站值多少钱 编辑:程序博客网 时间:2024/04/30 02:13
长单词
"我在马路边,捡到一毛钱,把它交到学长蜀黍手里边,学长问我志在何方,我说我要考英语八级!"。“考过还要考8.1级!”小杰最喜欢英语了,尤其是喜欢和他的小伙伴李有才比赛找长单词,他们比谁发现的单词最长。小杰找来了很多的报纸、杂志。看着满版的英文,李有才童鞋盘算着先故作痴呆来使对方大意,谁知走火入魔无法自拔,结果真成傻子了(其实我觉得他本来就挺傻的,你说呢?——审题者注)。你知道小杰为什么这么厉害吗?猜猜看?因为他有春哥的超级记忆力帮助啊!真的假的啊他这么叼学长蜀黍知道不?当然是真滴啊,不然怎么找的那么准!不对哦!记数字跟单词长度有毛关系啊!额。。因为他有聪明的你嘛!
Input
输入是一段英语文章。一段文章最多有 1000 个单词,每个单词的最大长度为100.)
Output
一个整数,表示这篇文章里最长的单词的长度。
Sample Input
EUREKA, Calif. (AP) - A powerful magnitude-6.9 earthquake struck Sunday night off the coast of Northern California, but there were no immediate reports of injury or damage and no danger of a tsunami, officials said. "I can come today," she said, "but not tomorrow."
Sample Output
13
HINT
文章中可能存在的标点有:
引号 "
逗号 ,
句号 .
括号 ()
"我在马路边,捡到一毛钱,把它交到学长蜀黍手里边,学长问我志在何方,我说我要考英语八级!"。“考过还要考8.1级!”小杰最喜欢英语了,尤其是喜欢和他的小伙伴李有才比赛找长单词,他们比谁发现的单词最长。小杰找来了很多的报纸、杂志。看着满版的英文,李有才童鞋盘算着先故作痴呆来使对方大意,谁知走火入魔无法自拔,结果真成傻子了(其实我觉得他本来就挺傻的,你说呢?——审题者注)。你知道小杰为什么这么厉害吗?猜猜看?因为他有春哥的超级记忆力帮助啊!真的假的啊他这么叼学长蜀黍知道不?当然是真滴啊,不然怎么找的那么准!不对哦!记数字跟单词长度有毛关系啊!额。。因为他有聪明的你嘛!
Input
输入是一段英语文章。一段文章最多有 1000 个单词,每个单词的最大长度为100.)
Output
一个整数,表示这篇文章里最长的单词的长度。
Sample Input
EUREKA, Calif. (AP) - A powerful magnitude-6.9 earthquake struck Sunday night off the coast of Northern California, but there were no immediate reports of injury or damage and no danger of a tsunami, officials said. "I can come today," she said, "but not tomorrow."
Sample Output
13
HINT
文章中可能存在的标点有:
引号 "
逗号 ,
句号 .
括号 ()
连字符 -(连字符连起来的算作一个单词,例如样例中的 magnitude-6.9)
看到题,就感觉判断条件很模糊,比如 空格加 - 加个单词,这个-也算进去吗... 小数是个单词吗?什么时候标点算作是间断符?依靠我的判断试着提交了一下,居然过了。。。
方法倒不复杂,空格代替特定标点,然后记数,本来想边判断边记数的,感觉有点麻烦,不如这个好理解并且好编代码,而且也不会超时。
#include <stdio.h>#include <stdlib.h>#include<ctype.h>#include<string.h>int main(){ char a[100005]; int i,j; gets(a); int n=strlen(a); if(!isalnum(a[0])) a[0]=' '; for(i=1; i<n-1; i++) { if(!isalnum(a[i])) { if(a[i]=='"'||a[i]==','||a[i]=='('||a[i]==')') a[i]=' '; else if((a[i]=='.')&&(!isdigit(a[i-1])||!isdigit(a[i+1]))) a[i]=' '; else if((a[i]=='-')&&(!isalnum(a[i-1])||!isalnum(a[i+1]))) a[i]=' '; } } if(!isalnum(a[n-1])) a[n-1]=' '; //puts(a); int count=0,max=0; for(i=0; i<n; i++) { if(a[i]!=' ') count++; else { if(count>max) max=count; count=0; } } printf("%d\n",max>count? max:count); return 0;}
0 0
- 校赛B 长单词
- 校赛B 长单词
- 单词B
- 长单词处理
- 单词学习B
- 正则 - 单词边界 /b
- A+B长字符串
- word-wrap word-break 长单词换行
- 正则之\b单词边界
- 正则表达式匹配单词\b
- 正则基础之--/b 单词边界
- 正则基础之"/b"单词边界
- 正则基础之--/b单词边界
- 单词背后的逻辑—字母B
- 周赛问题 福州 B - 单词问题
- B.背单词 。。 KMP。模板题
- 正则表达式(单词边界 \b)
- 英文网站单词长自动换行 css样式
- c函数之【进程及流程控制】
- Fence Repair
- myFirstApp android app
- 离散化 anoi2005穿越磁场 bzoj1967
- JAVA过滤html标签的方法
- 校赛B 长单词
- c函数之【格式化输人输出函数】
- cocos2dx-新建工程时避免文件和文件夹的拷贝
- 9.菜鸟启程,向大牛进发
- zoj 2839 Find the Sequences(数学题)
- c函数之【文件及目录函数】
- 高效程序员的 7 个共同特征
- C/C++实现矩阵相乘(一)
- DCMTK-Configure the logger from a program