华为python第一题怎么才18.8 有大佬指出来一下么

作者:牛客703727484号
链接:https://www.nowcoder.com/discuss/489744
来源:牛客网

list1=list(map(int, input().split()))
res_b_mov=[]
res_2=[]
for i in list1:
    tem=0
    tem1=0
    for j in range(16):
        if j==0:
            if 1 << (j * 2) & i:
                tem1 += 1 << (j * 2 + 1)
            if 1 << (j * 2 + 1) & i:
                tem1 += 1 << (j * 2)
        if 1<<(j*2)&i:
            tem+=1<<(j*2+1)
        if 1<<(j*2+1)&i:
            tem+=1<<(j*2)
    res_b_mov.append(tem)
    res_2.append(tem1)
res=[]
for i in range(len(res_b_mov)):
    res1=0
    tem=res_b_mov[i]
    if i==0:
        tem1 = res_2[-1]
    else:
        tem1=res_2[i-1]
    res1+=tem>>2
    res1+=tem1<<30
    res.append(res1)
for i in res:
    print(i,end=" ")

#笔试题目##华为#
全部评论

相关推荐

風に薫る:前阵子把一个面试时老托腮抖腿的挂了 太松弛真不行
点赞 评论 收藏
分享
05-29 20:34
门头沟学院 C++
KarlAllen:得做好直接春招的准备。学历差的话,一是面试要求会比学历好的严格不少,二是就算面试通过了也会被排序。总之暑期和秋招对于学历差的就是及其不友好
点赞 评论 收藏
分享
不愿透露姓名的神秘牛友
06-20 14:01
点赞 评论 收藏
分享
评论
点赞
1
分享

创作者周榜

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