smartoj2470异或运算

来源:互联网 发布:专心软件怎么签到 编辑:程序博客网 时间:2024/04/30 10:20
{注意异或的运算法则}
var
  n,k,i,j,ans:longint;
  a:array[1..5000] of longint;
  s:array[0..5000] of longint;
begin
  read(n,k);
  fillchar(s,sizeof(s),0);
  ans:=0;
  for i:=1 to n do
    begin
     read(a[i]);
     s[i]:=s[i-1] xor a[i];
    end;
  for i:=1 to n do
    begin
      ifa[i]=k then inc(ans);
      forj:=i+1 to n do
       if s[i-1] xor s[j] =k then inc(ans);
    end;
  writeln(ans);
end.