题解 | #合法IP#

合法IP

https://www.nowcoder.com/practice/995b8a548827494699dc38c3e2a54ee9

const readline = require('readline');

const rl = readline.createInterface({
    input: process.stdin,
    output: process.stdout
});
rl.on('line', function (line) {
    // 得到ip地址的各项
    const ipItems = line.split('.');
    // 传参
    console.log(ipTest(ipItems))
});



function ipTest(ipItems: string[]){
    // 判断是否是ip地址的四项
    if(ipItems.length !== 4)    return 'NO'

    // 遍历ip地址的各项
    for(let item of ipItems){
        // 每一项的长度不能大于3也不能小于0
        if(item.length > 3 || item.length <= 0)  return 'NO'
        // 每一项的值不能大于255且不能是负数
        if(parseInt(item) > 255 || parseInt(item) < 0)    return 'NO'
        // 防止是 类似001这样的数据
        if(item !== '' + parseInt(item))    return 'NO'
    }

    // 所有项都遍历了之后,都没返回,证明是符合要求的
    return 'YES'
}

全部评论

相关推荐

秋招投简历提醒助手:个人经验是,一般面二十场左右就会进入侃侃而谈阶段。我今年七月末的时候开始的第一次面试,都是很多不会,回复很慢。后面慢慢迭代,到九月中的时候基本上面啥说啥,很放松的状态
远程面试的尴尬瞬间
点赞 评论 收藏
分享
评论
点赞
收藏
分享

创作者周榜

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