#include <iostream>
#include <cstring>
#include <cstdio>
#include <algorithm>
using namespace std;
const int N = 2e6 + 10;
int last[N], g[N], a[N];
int f[N][30], logn[N];
int n, m, x;
void prework()
{
logn[1] = 0;
for(int i = 2; i <= n; ++ i) logn[i] = logn[i / 2] + 1;
for(int i = 1; i <= n; ++ i) f[i][0] = g[i];
for(int j = 1; j <= 20; ++ j)
for(int i = 1; i + (1 << j) - 1 <= n; ++ i)
{
f[i][j] = max(f[i][j - 1], f[i + (1 << (j - 1))][j - 1]);
}
}
int query(int l, int r)
{
int k = logn[r - l + 1];
return max(f[l][k], f[r - (1 << k) + 1][k]);
}
int main()
{
cin >> n >> m >> x;
for(int i = 1; i <= n; ++ i) scanf("%d", &a[i]);
for(int i = 1; i <= n; ++ i)
{
g[i] = last[x ^ a[i]];
last[a[i]] = i;
}
prework();
while(m --)
{
int l ,r;
scanf("%d%d",&l, &r);
if(query(l, r) < l) puts("no");
else puts("yes");
}
return 0;
}
【推荐】国内首个AI IDE,深度理解中文开发场景,立即下载体验Trae
【推荐】编程新体验,更懂你的AI,立即体验豆包MarsCode编程助手
【推荐】抖音旗下AI助手豆包,你的智能百科全书,全免费不限次数
【推荐】轻量又高性能的 SSH 工具 IShell:AI 加持,快人一步
· 【自荐】一款简洁、开源的在线白板工具 Drawnix
· 没有Manus邀请码?试试免邀请码的MGX或者开源的OpenManus吧
· 无需6万激活码!GitHub神秘组织3小时极速复刻Manus,手把手教你使用OpenManus搭建本
· C#/.NET/.NET Core优秀项目和框架2025年2月简报
· DeepSeek在M芯片Mac上本地化部署