密码验证合格程序

密码验证合格程序

http://www.nowcoder.com/questionTerminal/184edec193864f0985ad2684fbc86841

#include<bits/stdc++.h>
using namespace std;
int style(string s) {
    int sty[4] = {0};
    for(int i = 0; i < s.size(); i++) {
        if(s[i] >= '0' && s[i] <= '9') sty[2]++;
        else if((s[i] >= 'a' && s[i] <= 'z')) sty[0]++;
        else if((s[i] >= 'A' && s[i] <= 'Z')) sty[1]++;
        else sty[3]++;
    }
    int w = 0;
    for(int i = 0; i < 4; i++) {
        if(sty[i] > 0) w++;
    }
    return w;
}
bool right(string s) {
    for(int i = 0; i < s.size() - 5; i++) {
        string temp = s.substr(i, 3);
        string temp1 = s.substr(i + 3, s.size() - i - 3);
        if(temp1.find(temp) != string::npos) return false;
    }
    return true;
}
int main()
{
    string s;
    while(cin >> s) {
        if(s.size() <= 8) {
            printf("NG\n");
        } else {
            int lei = style(s);
            if(lei < 3) printf("NG\n");
            else {
                if(right(s)) printf("OK\n");
                else printf("NG\n");
            }
        }
    }
    return 0;
}
全部评论

相关推荐

不愿透露姓名的神秘牛友
07-09 11:30
找工作7个月,投了7000封,3段世界五百强实习,才有一个offer,牛油们肯定比我强吧
码农索隆:不对不对不对,实习经历这么厉害,简历也没少投,问题出在哪呢
点赞 评论 收藏
分享
不愿透露姓名的神秘牛友
07-11 11:22
怎么这么多逆天求职者,救救我救救我救救我😭
flmz_Kk:哈哈哈哈哈哈,这么多求职者,肯定有那一两个逆天的
点赞 评论 收藏
分享
评论
点赞
收藏
分享

创作者周榜

更多
牛客网
牛客网在线编程
牛客网题解
牛客企业服务