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

密码验证合格程序

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

参考大佬的写法

let temp;
while(temp = readline()) {
    let result = getResult(temp);
    console.log(result);
}
function getResult(s) {
    let a = lenFun(s);
    let b = typeFun(s);
    let c = noSameFun(s);
    if(a && b && c) return "OK";
    return "NG";
}
function lenFun(s) {
    return s.length > 8 ? true : false;
}
function typeFun(s) {
    let num = 0;
    if(/[A-Z]/.test(s)) num++;
    if(/[a-z]/.test(s)) num++;
    if(/[0-9]/.test(s)) num++;
    if(/[^A-Za-z0-9]/.test(s)) num++;
    return num >= 3;
}
function noSameFun(s) {
    let arr = [];
    for(let i = 0; i < s.length; i++) {
        let str = s.substr(i, 3);
        if(arr.includes(str)) {
            return false;
        } else {
            arr.push(str);
        }
    }
    return true;
}
全部评论

相关推荐

点赞 评论 收藏
分享
SHC2:关键问题是你这三段实习是三个不同的岗位…你这样子秋招就是只有一段实习的本科生..
点赞 评论 收藏
分享
评论
点赞
收藏
分享

创作者周榜

更多
牛客网
牛客企业服务