50 pts 求助
查看原帖
50 pts 求助
170603
chaichunyang楼主2022/7/20 07:58
#include<bits/stdc++.h>
#define ull unsigned long long
using namespace std;
int n;
ull a[31],anss,ans=0;
int main(){
	scanf("%d",&n);
	for(int i=1;i<=n;i++)scanf("%llu",&a[i]),a[i]^=a[i-1];
	register int i;
	for(i=0;i<(1<<n)-1;i++){
		ans^=a[(int)log2((-i-1)&(i+1))+1];
		anss^=(ans*(i+1));
	}
	printf("%llu",anss);
} 
2022/7/20 07:58
加载中...