AcWing 774. 最长单词
写在前面:AcWing是由北大一神级人物——“大雪菜” 创办的算法交流社区, 里面除了正常 oj 网站的功能之外, 还提供单人训练、双人匹配、云端操作系统等模式,除此之外不定期举行各种打卡活动,而且可以分享题解和心得,完全可以当成空间来玩。欢迎大家入坑。
点击前往:AcWing
题目描述
一个以’.’结尾的简单英文句子,单词之间用空格分隔,没有缩写形式和其它特殊形式,求句子中的最长单词。
输入格式
输入这个简单英文句子,长度不超过500。
输出格式
该句子中最长的单词。如果多于一个,则输出第一个。
输入样例
I am a student of Peking University.
输出样例
University
解题思路
这种题最喜欢用map做了
已过代码
# include <iostream>
# include <map>
using namespace std;
int main (){
map<int,string,greater<int>> m;
string s;
while (cin>>s){
if (s.back()=='.') s.pop_back();
if (!m.count(s.size())) m[s.size()]=s;
}
cout<<m.begin()->second<<endl;
}