算法提高 最长单词
程序员文章站
2022-05-12 10:55:38
...
编写一个函数,输入一行字符,将此字符串中最长的单词输出。
输入仅一行,多个单词,每个单词间用一个空格隔开。单词仅由小写字母组成。所有单词的长度和不超过100000。如有多个最长单词,输出最先出现的。
样例输入
I am a student
样例输出
student
#include<bits/stdc++.h>
using namespace std;
int main()
{
int count = 0, maxcount = 0;
string s1;
string::iterator st;
string::iterator maxs;
getline(cin, s1, '\n');
st = s1.begin();
while (st!=s1.end())
{
if (*st != ' ')
{
count++;
}
if (*st == ' ')
{
count = 0;
}
st++;
if (maxcount < count)
{
maxcount = count;
maxs = st - maxcount;
}
}
for (st = maxs; st != maxs + maxcount; st++)
{
cout << *st;
}
return 0;
}