AcWing 774. 最长单词
原题链接
中等
作者:
dyb
,
2021-02-01 10:47:30
,
所有人可见
,
阅读 260
双指针算法
#include <iostream>
#include <cstring>
using namespace std;
int main()
{
string s;
getline(cin, s);
int max_cnt = 1; // 最长单词的长度
int p = 0; // 最长单词的起始下标
for (int i = 0; i < s.size() - 1; i ++)
{
int cnt = 0;
// 双指针算法
int j = i;
while (j < s.size() - 1 && s[j] != ' ')
j ++, cnt ++;
if (cnt > max_cnt)
max_cnt = cnt, p = i;
i = j;
}
for (int i = 0; i < max_cnt; i ++, p++)
cout << s[p];
//cout << endl << max_cnt;
return 0;
}