题解 | #密码验证合格程序#

密码验证合格程序

https://www.nowcoder.com/practice/184edec193864f0985ad2684fbc86841

#include <iostream>
#include <string>
using namespace std;

bool solve(string s){
    if(s.size()<=8){
        return false;
    }
    int a[4]={0};
    for(auto x : s){
        if(x>='a'&&x<='z'){
            a[0]=1;
        }else if(x>='A'&& x <='Z'){
            a[1]=1;
        }else if(x>='0'&& x <='9'){
            a[2]=1;
        }else {
            a[3]=1;
        }
        
    }
    int count =0;
    for(auto x : a){
        if(x==1){
            count ++;
        }
    }
    for(int i=0;i<=s.size()-6;i++){
        for(int j=i+3;j<=s.size()-3;j++){
            if(s[i]==s[j]&&s[i+1]==s[j+1]&&s[i+2]==s[j+2]){
                return false;
            }
        }
    }
    if (count>=3){
        return true;
    }
    return false;
}

int main(){
    string s;
    while(cin>>s){
        bool res=solve(s);
        if(res == false){
            cout<< "NG" << endl;    
        }else{
            cout<< "OK" << endl;
        }
        
    }
    
}

随便写写玩儿,有点暴力
全部评论

相关推荐

点赞 评论 收藏
分享
点赞 收藏 评论
分享
牛客网
牛客企业服务