2 条题解

  • 2
    @ 2024-7-25 11:59:44
    #include<bits/stdc++.h>
    using namespace std;
    int main(){    
        //定义变量,初始化
        string a,b;
        int da,xiao,shu,fu,else_;
        da=xiao=shu=fu=else_=0;
        cin>>a;
        a+=','; //给a补充一个',',否则判断不到最后一个
        for(int i=0;i<=a.size();i++){
            //计数
            if(a[i]!=','){
                if(a[i]>='a' && a[i]<='z'){
                    xiao++;
                }
                else if(a[i]>='A' && a[i]<='Z'){
                    da++;
                }
                else if(a[i]>='0' && a[i]<='9'){
                    shu++;
                }
                else if(a[i]=='@' || a[i]=='!' || a[i]=='#' || a[i]=='$'){
                    fu++;
                }
                //不要忘记判断其他情况
                else{
                    else_++;
                }
                b+=a[i];
            }
            else{
                b+='\0'; //结尾必须为'\0'
                //调试
                //cout<<da<<" "<<xiao<<" "<<shu<<" "<<fu<<" "<<else_<<" "<<b<<endl; 
                if(fu>=1 && else_==0){ //判断
                    if((da>0 && shu>0) || (xiao>0 && shu>0) || (da>0 && xiao>0)){
                        if(b.size()>=7 && b.size()<=13){
                            cout<<b<<endl;
                        }
                    }
                }
                //重置
                b=""; 
                da=xiao=shu=fu=0;
                else_=0;
                //重置
            }
        }
        return 0;
    }
    
    • 1
      @ 2024-8-29 22:55:06

      #include<bits/stdc++.h> using namespace std; int main(){
      string a,b; int da,xiao,shu,fu,else_; da=xiao=shu=fu=else_=0; cin>>a; a+=','; for(int i=0;i<=a.size();i++){ if(a[i]!=','){ if(a[i]>='a' && a[i]<='z'){ xiao++; } else if(a[i]>='A' && a[i]<='Z'){ da++; } else if(a[i]>='0' && a[i]<='9'){ shu++; } else if(a[i]'@' || a[i]'!' || a[i]'#' || a[i]'$'){ fu++; } else{ else_++; } b+=a[i]; } else{ b+='\0'; if(fu>=1 && else_==0){ if((da>0 && shu>0) || (xiao>0 && shu>0) || (da>0 && xiao>0)){ if(b.size()>=7 && b.size()<=13){ cout<<b<<endl; } } } b=""; da=xiao=shu=fu=0; else_=0; } } return 0; }

      • 1

      信息

      ID
      2289
      时间
      1000ms
      内存
      128MiB
      难度
      10
      标签
      递交数
      6
      已通过
      5
      上传者