选数异或(JAVA)
作者:
husheng
,
2022-05-06 17:18:15
,
所有人可见
,
阅读 275
import java.util.*;
public class Main{
public static void main(String[] args) {
Scanner input=new Scanner(System.in);
int n=input.nextInt();
int m=input.nextInt();
long x=input.nextLong();
long[] arr=new long[n];
for(int i=0;i<n;i++) {
arr[i]=input.nextLong();
}
int[] left=new int[m];
int[] right=new int[m];
for(int i=0;i<m;i++) {
left[i]=input.nextInt();
right[i]=input.nextInt();
}
int[] str=new int[n+5];
for(int i=0;i<n;i++) {
long t=arr[i]^x;
for(int j=i+1;j<n;j++) {
if(arr[j]==t) {
str[i]=j;
break;
}
}
}
for(int i=0;i<m;i++) {
for(int j=left[i]-1;j<right[i];j++) {
if(str[j]<right[i]&&str[j]!=0) {
System.out.println("yes");
break;
}
if(j==right[i]-1) {
System.out.println("no");
}
}
}
}
}