不能这样写 🤣
🤡
inline bool check2(int shang,int xia){
int a=(xia<<1),b=(xia>>1);
if((a||b||xia)&shang!=0){
return false;
}
return true;
}
因为先判断(a∣∣b∣∣xia)为1或0然后再&上shang得出错误的答案
正确写法:🥵
inline bool check2(int shang,int xia){
if(shang&xia) return false;
if(shang&(xia<<1)) return false;
if(shang&(xia>>1)) return false;
return true;
}
