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

密码验证合格程序

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

//写的好难看啊

#include <iostream>
#include <vector>
using namespace std;
int main() {
    string str;
    while (getline(cin, str)) {
        int digit = 0, lower = 0, upper = 0, graph = 0;
        for (auto i : str) {
            if (isdigit(i)) {
                digit = 1;
            }
            if (islower(i)) {
                lower = 1;
            }
            if (isupper(i)) {
                upper = 1;
            }
            if (isgraph(i) && !isalnum(i)) {
                graph = 1;
            }
        }
        int labor = 1;
        if (str.size() < 9) labor = 0;
        for (int i = 0; i < str.size(); i++) {
            for (int j = i + 1; j < str.size(); j++) {
                if (str[j] == str[i] && str[j + 1] == str[i + 1] && str[j + 2] == str[i + 2]) {
                    labor = 0;
                    break;
                }
            }
        }
        // cout << labor << endl;
        if (digit + lower + upper + graph >= 3 && labor) {
            cout << "OK" << endl;
        } else {
            cout << "NG" << endl;
        }
    }
}

全部评论

相关推荐

字节 飞书绩效团队 (n+2) * 15 + 1k * 12 + 1w
点赞 评论 收藏
分享
牛客101244697号:这个衣服和发型不去投偶像练习生?
点赞 评论 收藏
分享
牛客279957775号:铁暗恋
点赞 评论 收藏
分享
点赞 收藏 评论
分享
牛客网
牛客企业服务