用户:
大黄鸡走走Code查看:10 回复:3 评论:10 创建时间:2024-05-17T20:50:28
刚学到字符串,没学函数,请指教
[题目描述]输入1行句子(不多于200个单词,每个单词长度不超过100),只包含字母、空格和逗号。单词由至少一个连续的字母构成,空格和逗号都是单词间的间隔。
试输出第1个最长的单词和第1个最短单词。
输入
一行句子。
输出第1行,第一个最长的单词。
第2行,第一个最短的单词。
样例输入I am studying Programming language C in Peking University 样例输出
Programming
I
提示
提示:
如果所有单词长度相同,那么第一个单词既是最长单词也是最短单词。
#include<bits/stdc++.h>
using namespace std;
string s;
int maxx=-99999,minn=999999;
string ans1,ans2;
int main() {
getline(cin,s);
int len=s.size();
int cnt=0;
for(int i=0; i<len; i++) {
if(s[i]==' ' || s[i]==',') {
if(maxx<cnt && i-cnt>=0)
ans1=s.substr(i-cnt,cnt);
if(minn>cnt && i-cnt>=0)
ans2=s.substr(i-cnt,cnt);
maxx=max(cnt,maxx);
minn=min(cnt,minn);
cnt=0;
} else
cnt++;
}
cout<<ans1<<endl<<ans2;
return 0;
}点赞0
评论