#include <iostream>
#include <iterator>
using namespace std;
int main() {
// 定义数字num和目标
unsigned short num, target;
while (cin >> num >> target) {
bool flag = false;//flag用于能否找到结果
const unsigned short carry = 1 << 15;//
for (int i = 0; i < 20; i++) {
//如果num大于carry证明左移需要进一
if (num >= carry) {
num = (num << 1) + 1;
} else {
num = num << 1;
}
//找到结果输出并标记
if(num == target){
flag = true;
cout << "YES"<<endl;
break;
}
}
if(!flag) cout <<"NO"<<endl;
}
}
// 64 位输出请用 printf("%lld")

京公网安备 11010502036488号