4 条题解
-
3
#include <iostream> #include <string> using namespace std; int main() { string s; getline(cin, s); // 读取一行字符串 int start = 0, end = 0; // 记录最长单词的开始和结束位置 int max_len = 0; // 记录最长单词的长度 for (int i = 0; i < s.size(); i++) { // 如果遇到空格或者句号,则更新单词长度 if (s[i] == ' ' || s[i] == '.') { int len = i - start; if (len > max_len) { max_len = len; end = i; } start = i + 1; // 更新下一个单词的起始位置 } } // 输出最长单词 cout << s.substr(end - max_len, max_len) << endl; return 0; }
-
0
yasuo👀️
按理说应该对的,但他只对了90%
哪位大神帮我看看,谢谢
#include <iostream> #include <string> int main(){ std::string q[505]={}; int i,w,maxn[2]={}; for(i=0;true;i++){ std::cin>>q[i]; w=q[i].length(); if(w>maxn[0]){maxn[0]=w;maxn[1]=i;} if(q[i][w-1]=='.') break;} if(maxn[1]==i) q[i][w-1]='\0'; std::cout<<q[maxn[1]]; return 0;}
- 1
信息
- ID
- 215
- 时间
- 1000ms
- 内存
- 128MiB
- 难度
- 4
- 标签
- 递交数
- 121
- 已通过
- 53
- 上传者