社区讨论
40pts求调
P8773 [蓝桥杯 2022 省 A] 选数异或参与者 1已保存回复 1
讨论操作
快速查看讨论及其快照的属性,并进行相关操作。
- 当前回复
- 1 条
- 当前快照
- 1 份
- 快照标识符
- @mhjhlo5t
- 此快照首次捕获于
- 2025/11/04 02:42 4 个月前
- 此快照最后确认于
- 2025/11/04 02:42 4 个月前
rt
神秘wa
CPP#include<bits/stdc++.h>
using namespace std;
long long n,m,x,a[100005],st[100005][25],t[1000005],ans[100005];
int main()
{
scanf("%lld%lld%lld",&n,&m,&x);
for(long long i=1;i<=n;i++)
{
scanf("%lld",&a[i]);
ans[i]=t[a[i]^x];
t[a[i]]=i;
st[i][0]=ans[i];
}
for(long long j=1;j<=20;j++)
{
for(long long i=1;i+(1<<j)-1<=n;i++)
{
st[i][j]=max(st[i][j-1],st[i+(1<<(j-1))][j-1]);
}
}
while(m--)
{
long long l,r;
scanf("%lld%lld",&l,&r);
long long k=log2(r-l+1);
long long t=max(st[l][k],st[r-(1<<k)+1][k]);
if(t>=l)
{
printf("yes\n");
}
else
{
printf("no\n");
}
}
return 0;
}
回复
共 1 条回复,欢迎继续交流。
正在加载回复...