#华为笔试#
8月26华为笔试记录:
public static void main(String[] args) {
        Scanner sc = new Scanner(System.in);
        String[] str = sc.nextLine().split(" ");
        int n = str.length;
        long[] nums = new long[n];
        for(int i=0;i<n;i++){
            nums[i]=Long.parseLong(str[i]);
        }
        //先完成第一步,把每个整数的奇偶bit为互换
        for(int i=0;i<n;i++){
            long temp = nums[i];
            nums[i]=((temp&0xaaaaaaaa)>>>1)+((temp&0x55555555)<<1);
        }//打印试一下
        //System.out.println(nums[0]);
        long[] low=new long[n];
        long[] high = new long[n];
        long[] ans = new long[n];
        for(int i=0;i<n;i++){
            low[i]=nums[i];
            high[i]=nums[(i+1)%n];
            ans[i] = (low[i]>>>2)+((high[i]&3)<<30);
        }
        for(int i=0;i<n;i++)
            System.out.print(ans[i]+" ");
    }
全部评论

相关推荐

前段时间投boss,实在没绷住,就发出来吧
测开小登的自我救赎:这种就别较真了,感觉应该是那种吃上了学历贬值的时代红利感觉自己也能找一堆92硕士的边角料小公司吧
点赞 评论 收藏
分享
10-30 16:31
重庆大学 Java
代码飞升_不回私信人...:你说你善于学习,大家都会说。你说你是985,985会替你表达一切
点赞 评论 收藏
分享
点赞 评论 收藏
分享
评论
6
收藏
分享

创作者周榜

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