社区讨论

求助。。。模板哪错了。。。

P3812【模板】线性基参与者 5已保存回复 19

讨论操作

快速查看讨论及其快照的属性,并进行相关操作。

当前回复
19 条
当前快照
1 份
快照标识符
@mi7y6tw2
此快照首次捕获于
2025/11/21 05:33
4 个月前
此快照最后确认于
2025/11/21 06:42
4 个月前
查看原帖
RT,
CPP
#include <bits/stdc++.h>

using namespace std;
typedef long long ll;
ll a[100005];
ll p[100005];//p[i]为线性基 
void Insert(ll x)
{
	for(ll i=65;i>=0;--i)
	{
		if(!(x>>i))
		{
			continue;
		}
		if(!p[i])
		{
			p[i]=x;
			break;
		}
		x^=p[i];
	}
}

int main()
{
	ll n;
	scanf("%lld",&n);
	for(ll i=1;i<=n;++i)
	{
		scanf("%lld",&a[i]);
		Insert(a[i]);
	}
	ll ans=0;
	for(ll i=65;i>=0;--i)
	{
		if((ans^p[i])>ans)
		{
			ans^=p[i];
		}
	}
	printf("%lld",ans);
	return 0;
}

回复

19 条回复,欢迎继续交流。

正在加载回复...