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

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

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

活动地址: 牛客春招刷题训练营 - 编程打卡活动

import sys

while True:

    try:

        x = input().split('.') # 数据输入

        y = input().split('.')

        z = input().split('.')

        m, n = [], []

        for i in range(len(x)):

            x[i] = int(x[i]) # 将输入转化为int型

            y[i] = int(y[i])

            z[i] = int(z[i])

        if x[0]!= 255 or x[3]!=0 or max(x+y+z)>255 or min(x+y+z)<0: # 判断

            print('1')

        else:

            for i in range(len(x)):

                m.append(int(x[i]) & int(y[i])) #做and 运算

                n.append(int(x[i]) & int(z[i])) # 同上

            if m == n:

                print('0')  # 判断最后结果

            else:

                print('2')  # 输出

    except:

        break

活动地址: 牛客春招刷题训练营 - 编程打卡活动

全部评论

相关推荐

评论
1
1
分享

创作者周榜

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