题解 | #位操作练习#

位操作练习

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

#include<iostream>
#include<bitset>
using namespace std;

int main(void)
{
	int a,b;
	while(cin >> a >> b)
	{
		bool f = false;
		bitset<16>b1(a);
		bitset<16>b2(b);
		for(int i = 0; i < 16;i++)
		{
			b1 = (b1 >> (16 - i)) | (b1 << i);
			if(b1 == b2) {
				f = true;
				break;
			} 
		}
		if(f) cout << "YES\n";
		else cout << "NO\n";
	}
	
	return 0;
}

全部评论

相关推荐

点赞 评论 收藏
转发
点赞 收藏 评论
分享
牛客网
牛客企业服务