16:最长单词2

16:最长单词2

总时间限制: 
1000ms
 
内存限制: 
65536kB
描述

一个以'.'结尾的简单英文句子,单词之间用空格分隔,没有缩写形式和其它特殊形式,求句子中的最长单词。

输入
一个以'.'结尾的简单英文句子(长度不超过500),单词之间用空格分隔,没有缩写形式和其它特殊形式。
输出
该句子中最长的单词。如果多于一个,则输出第一个
样例输入
I am a student of Peking University.
样例输出
University
 1 #include<iostream>
 2 #include<cstdio>
 3 #include<cstring>
 4 #include<cmath>
 5 using namespace std;
 6 char a[10001];
 7 int b[10001];
 8 int maxn=-1;
 9 char ans=0;
10 int beginn;
11 int endn;
12 int now;
13 int main()
14 {
15     gets(a);
16     int l=strlen(a);
17     for(int i=0;i<l;i++)
18     {
19         if(a[i]!=' '&&a[i]!='.')
20         now++;
21         else
22         {
23             if(now>maxn)
24             {
25                 maxn=now;
26                 beginn=i-now;
27                 endn=i;
28                 
29             }now=0;
30         }
31     }
32     for(int i=beginn;i<=endn-1;i++)
33     {
34         cout<<a[i];
35     }
36     return 0;
37 }
原文地址:https://www.cnblogs.com/zwfymqz/p/6506581.html