3475相或为k
3475相或为k
⭐️难度:困难
🌟考点:位运算
📖
📚
import java.util.Scanner;
import java.util.Scanner;
public class Main {
public static void main(String[] args) {
Scanner sc = new Scanner(System.in);
int t = sc.nextInt();
while(t-->0) {
int n = sc.nextInt();//循环的数
int k = sc.nextInt();//给的或(数)
int num = 0;
for(int i=1;i<=n;i++) {
int r =sc.nextInt();
if((r&k)==r) { // r有1的位置k也刚好有1
num = num | r;
}
}
if(num==k) {
System.out.println("Yes");
}else {
System.out.println("No");
}
}
}
}
🍎笔记