当前位置: 代码迷 >> 综合 >> 蓝桥杯ADV-78 VIP试题 最长单词(试题解析)
  详细解决方案

蓝桥杯ADV-78 VIP试题 最长单词(试题解析)

热度:92   发布时间:2024-01-29 13:45:09.0

试题 算法提高 最长单词

提交此题   评测记录  

资源限制

时间限制:1.0s   内存限制:512.0MB

  编写一个函数,输入一行字符,将此字符串中最长的单词输出。
输入仅一行,多个单词,每个单词间用一个空格隔开。单词仅由小写字母组成。所有单词的长度和不超过100000。如有多个最长单词,输出最先出现的。

样例输入

I am a student

样例输出

student

解题思路:模拟。

AC代码如下:

#include <iostream>
#include <string.h>
#include <sstream>
#include <vector>

using namespace std;

vector<string>    TXT;

int main(int argc, char** argv) {
string words;
getline(cin,words);

    string tmp;
istringstream iss(words);

while(iss>>tmp)
TXT.push_back(tmp);

    int maxLen=0;
int pos=-1;
for(int i=0;i<TXT.size();i++){
int curL=TXT[i].size();
if(curL>maxLen){
maxLen=curL;
pos=i;
}
}

cout<<TXT[pos]<<endl;

    return 0;
}

  相关解决方案