[P3812][模板]线性基
Posted elpsycongroo
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了[P3812][模板]线性基相关的知识,希望对你有一定的参考价值。
解题关键:求异或最大值。线性基模板题。
极大线性无关组的概念。
异或的值域相同。
#include<cstdio> #include<cstring> #include<algorithm> #include<cstdlib> #include<iostream> #include<cmath> using namespace std; typedef long long ll; const int MAX_BASE=63; ll base[64],a[60],n; void getbase(){ for(int i=1;i<=n;i++){ for(int j=MAX_BASE;j>=0;j--){ if(a[i]>>j){ if(!base[j]){ base[j]=a[i]; break; } a[i]^=base[j]; } } } } ll query_max(){ ll ans=0; for(int i=MAX_BASE;i>=0;i--){ if((base[i]^ans)>ans){ ans=base[i]^ans; } } return ans; } int main(){ scanf("%lld",&n); for(int i=1;i<=n;i++)scanf("%lld",&a[i]); getbase(); ll ans=query_max(); printf("%lld ",ans); }
以上是关于[P3812][模板]线性基的主要内容,如果未能解决你的问题,请参考以下文章