已知一个数列a1,a2,...an,求存在多少对(i,j)使得aixoraj=X,其中X给出,1≤n≤106,1≤ai,X≤230
#include<bits/stdc++.h>
using namespace std;
const int N=1e6+7;
unordered_map<int,int> mp;
int main(){
int n,x,y;
long long ans=0;
scanf("%d%d",&n,&x);
for (int i=1;i<=n;++i)
scanf("%d",&y),ans+=mp[y^x],++mp[y];
printf("%lld",ans<<1);
return 0;
}
TLE70pts