题解 | #位操作练习#

位操作练习

https://www.nowcoder.com/practice/7bdc346ca39841f6a05f73d98477621d

#include <stdio.h>

int main(){
    unsigned short int a,b;
    int len = sizeof(unsigned short int)*8;
    unsigned short int shifted=0;
    
    while (scanf("%hu %hu",&a,&b)==2){
        bool success=false;
        for(int i=0;i<len;i++){
            shifted = (a<<i)|(a>>len-i);
            if(shifted==b){
                success=true;
                break;
            }
        }
        if(success) printf("YES\n");
        else printf("NO\n");
    }
}

全部评论

相关推荐

对空六翼:你真幸运,碰见这么好的人,不像我,秋招的时候被室友骗进cx了
实习好累,可以辞职全力准...
点赞 评论 收藏
分享
评论
点赞
收藏
分享

创作者周榜

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