题解 | #判断两个IP是否属于同一子网#

判断两个IP是否属于同一子网

http://www.nowcoder.com/practice/34a597ee15eb4fa2b956f4c595f03218

while True:
    try:
        mask = input().split(".")
        ip1 = input().split(".")
        ip2 = input().split(".")
        if len(mask) != 4 or len(ip1) != 4 or len(ip2) != 4:
            print("1")
            break
        for i in range(4):
            mask[i] = int(mask[i])
            ip1[i] = int(ip1[i])
            ip2[i] = int(ip2[i])
        a = mask + ip1 + ip2
        if mask[0] != 255 or mask[3] != 0 or max(a)> 255 or min(a) < 0:
            print("1")
        else:
            b = True
            for i in range(4):
                # 两个ip每8位和对应掩码判断【与】运算是否相等,不等则说明不在同一掩码内,提前退出
                if (mask[i] & ip1[i]) != (mask[i] & ip2[i]):
                    b = False
                    break
            print("0") if b else print("2")
    except:
        break
全部评论

相关推荐

AFBUFYGRFHJLP:直接去美帝试试看全奖phd吧
点赞 评论 收藏
分享
过往烟沉:我说什么来着,java就业面就是广!
点赞 评论 收藏
分享
11-28 17:58
门头沟学院 Java
美团 JAVA开发 n×15.5
牛客786276759号:百度现在晋升很难的 而且云这块的业务没美团好 你看百度股价都跌成啥样了
点赞 评论 收藏
分享
评论
点赞
收藏
分享
牛客网
牛客企业服务