题解 | #整数与IP地址间的转换#

整数与IP地址间的转换

https://www.nowcoder.com/practice/66ca0e28f90c42a196afd78cc9c496ea

IP = input().split(".")
n = int(input())
IP_n = ""
n_IP = ""
for i in IP:
    if len(bin(int(i))[2:]) != 8:
        i = "0" * (8 - len(bin(int(i))[2:])) + bin(int(i))[2:]
        IP_n += i
    if len(bin(int(i))[2:]) == 8:
        IP_n += bin(int(i))[2:]
print(int(IP_n, 2))
n_IP = "0" * (32 - len(bin(n)[2:])) + bin(n)[2:]
n_IP = (
    str(int(n_IP[0:8], 2))
    + "."
    + str(int(n_IP[8:16], 2))
    + "."
    + str(int(n_IP[16:24], 2))
    + "."
    + str(int(n_IP[24:], 2))
)
print(n_IP)

全部评论

相关推荐

点赞 评论 收藏
分享
评论
点赞
收藏
分享

创作者周榜

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