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

整数与IP地址间的转换

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

str1=input()
str2=input()
a=[]
d=str1.split('.')
for i in d:
    a.append(bin(int(i)))
#print(a)
c=[]
for i in a:
    c.append(i[2::1].rjust(8,'0'))
#print(c)
x=''.join(c)
#print(c)
print(int(x,2))
e=bin(int(str2))[2:].rjust(32,'0')
f=['','','','']
j=0
#print(e)
'''
for i in e:#8,16,24,32
    l=e.index(i)
    if l==8:
        f[j]=e[0:8:1]
        j=j+1
    if j<4 and l%8==0:
        k=int(l/2)#为啥呢
        f[j]=e[k:l:1]
        j=j+1
'''
f[0]=e[0:8]
f[1]=e[8:16]
f[2]=e[16:24]
f[3]=e[24::1]
#print(f)
j=0
for k in f:
    f[j]=str(int(k,2))
    j=j+1

print('.'.join(f))

全部评论

相关推荐

程序员鼠鼠_春招版:都很烂大街,rpc也基本没人问,考研吧,不然就包装一段实习再去
点赞 评论 收藏
分享
评论
点赞
收藏
分享

创作者周榜

更多
牛客网
牛客企业服务