#include<iostream>
#include<string>
#include<iomanip>
using namespace std;
int ma=0,mi=114514,cnt;
string n;
int main(){
    getline(cin,n);//输入
    for(int i=0;i<n.length();i++){
        if(n[i]!=' '&&n[i]!=','){
            cnt++;//是字母计算长度
        }
        else{//不是字母
            ma=max(ma,cnt);//最长
            mi=min(mi,cnt);//最短
            cnt=0;//重开
        }
    }
    // cout<<ma<<' '<<mi<<endl;
    for(int i=0;i<n.length();i++){//这个用来找第一个最长的
        if(n[i]!=' '&&n[i]!=','){
            cnt++;//同上
        }
        else{
            if(cnt==ma){//如果长度和最长的一样

                // cout<<"i:"<<i<<endl;
                // cout<<"cnt:"<<cnt<<endl;
                for(int j=i-ma;j<i;j++){
                    // cout<<j<<' ';
                    cout<<n[j];//输出
                }
                cout<<endl;
                cnt=0;//归零
                break;//出循环
            }
            cnt=0;//归零
        }    
    }
    for(int i=0;i<n.length();i++){//这个找第一个最短
        if(n[i]!=' '&&n[i]!=','){
            cnt++;//同上
        }
        else{
            if(cnt==mi){//如果和最短的一样长
                // cout<<"i:"<<i<<endl;
                // cout<<"cnt:"<<cnt<<endl;
                for(int j=i-mi;j<i;j++){
                    // cout<<j<<' ';
                    cout<<n[j];//输出
                }
                cout<<endl;
                break;//出循环
            }
            cnt=0;//不是归零
        }    
    }
    return 0;
}

应茶叶大人的要求我又来更新了喵喵喵

#include<iostream>
#include<string>
#include<iomanip>
using namespace std;
int ma=0,mi=114514,cnt;
string n;
int main(){
    getline(cin,n);
    for(int i=0;i<n.length();i++){
        if(n[i]!=' '&&n[i]!=','){
            cnt++;
        }
        else{
            ma=max(ma,cnt);
            mi=min(mi,cnt);
            cnt=0;
            while(n[i]==','||n[i]==' '){
                i++;//k ,o
            }
            i-=1;
        }
    }
    for(int i=0;i<n.length();i++){
        if(n[i]!=' '&&n[i]!=','){
            cnt++;
        }
        else{
            if(cnt==ma){
                for(int j=i-ma;j<i;j++){
                    cout<<n[j];
                }
                cout<<endl;
                cnt=0;
                break;
            }
            cnt=0;
        }    
    }
    for(int i=0;i<n.length();i++){
        if(n[i]!=' '&&n[i]!=','){
            cnt++;
        }
        else{
            if(cnt==mi){
                for(int j=i-mi;j<i;j++){
                    cout<<n[j];
                }
                cout<<endl;
                break;
            }
            cnt=0;
        }    
    }
    return 0;
}

1 comments

  • 1

Information

ID
629
Time
1000ms
Memory
256MiB
Difficulty
6
Tags
# Submissions
119
Accepted
39
Uploaded By