4 条题解

  • 3
    @ 2023-6-22 1:44:43
    #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;
    }
    
    
    • 2
      @ 2024-2-4 16:21:01
      #include<bits/stdc++.h>
      using namespace std;
      int main(){
      string n,maxn="";
      while(1){
          cin>>n;
          if(n[n.size()-1]=='.'){
              n[n.size()-1]='\0';
              if(n.size()-1>maxn.size())maxn=n;
              break;
          }
          if(n.size()>maxn.size())maxn=n;
      }
      cout<<maxn;
      return 0;
      }
      
      • 2
        @ 2023-8-6 19:05:05

        yasuo👀️

        现在好了

        #include<bits/stdc++.h>
        int main(){
            std::string a,b=""; int l,maxn=0;
            while(std::cin>>a){
                l=a.length();
                if(a[l-1]=='.')a[--l]='\0';
                if(l>maxn){maxn=l; b=a;}}
            std::cout<<b; return 0;}
        
        • 0
          @ 2023-8-2 17:00:44

          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;}
          
          • @ 2023-8-6 21:48:21

            问题发现了👀️

            #include <iostream>
            #include <string>
            int main(){
                std::string q[505]={}; int nbool=1,i,w,maxn[2]={};
                for(i=0;nbool;i++){
                    std::cin>>q[i]; w=q[i].length();
                    if(q[i][w-1]=='.'){nbool=0; w-=1;}
                    if(w>maxn[0]){maxn[0]=w;maxn[1]=i;}}
                if(maxn[1]==i) q[i][w-1]='\0';
                std::cout<<q[maxn[1]]; return 0;}
            
        • 1

        信息

        ID
        215
        时间
        1000ms
        内存
        128MiB
        难度
        4
        标签
        递交数
        121
        已通过
        53
        上传者