问题标题: CSP-j 第三题 AC代码

0
0
吴永浩
吴永浩
初级守护
初级守护
#include<bits/stdc++.h>
using namespace std;
int n,k;
int a[500005],f[500005],pos,ans;
int main(){
    freopen("xor.in","r",stdin);
    freopen("xor.out","w",stdout);
    cin>>n>>k;
    for(int i=1;i<=n;i++){
        cin>>a[i];
        f[i]=f[i-1]^a[i];
    }
    for(int i=1;i<=n;i++){
        int x=pos;
        bool fl=0;
        while(pos<=i){
            if((pos!=i && (f[i]^f[pos])==k) || (i==pos && a[i]==k)){
                ans++;
                pos=i;
                fl=1;
                break;
            }
            pos++;
        }
        if(fl==0) pos=x;
    }
    cout<<ans;
    return 0;
}
吴永浩在2025-11-05 18:11:00追加了内容

逆天

吴永浩在2025-11-05 18:11:35追加了内容

禁止抄袭

吴永浩在2025-11-06 20:51:50追加了内容

坏了,实际75,关键我在三个平台上测都是100


0
李子墨
李子墨
新手天翼
新手天翼

这样看为什么偏分代码比AC的还长???

0
李子墨
李子墨
新手天翼
新手天翼

JOKER的我没想到滑动窗口(****的区间啊……)

我要回答