明显地,如果两个数相异或为 1,这两个数差一定也为 1。所以这两个数一定是偶数和奇数。而只有第一个质数 2 是偶数。所以只有当x=1 且 y=2 或x=2 且 y=1 时答案为 Yes。清楚了这点后本题也非常简单。
下面附上代码
#include <iostream>
using namespace std;
int main()
{
int t,x,y;
cin>>t;
while(t--)
{
cin>>x>>y;
if((x==1&&y==2)||(x==2&&y==1))
cout<<"Yes"<<'\n';
else
cout<<"No"<<'\n';
}
return 0;
}