4269: 再见Xor

Description

给定N个数,你可以在这些数中任意选一些数出来,每个数可以选任意多次,试求出你能选出的数的异或和的最大值和严格次大值。

我太愚蠢了连数组开小了以及$2^{31}$爆$int$都不造
线性基裸题啊....
#include <iostream>
#include <cstdio>
#include <cstring>
#include <algorithm>
#include <cmath>
#include <bitset>
using namespace std;
typedef long long ll;
const int N=1e5+5,INF=1e9;
inline int read(){char c=getchar();int x=0;while(c<'0'||c>'9'){c=getchar();}while(c>='0'&&c<='9'){x=x*10+c-'0';c=getchar();}return x;
}
int n,p;
int a[N],bin[N];
void ini(){bin[0]=1;for(int i=1;i<=30;i++) bin[i]=bin[i-1]<<1;
}
int now;
void Gauss(int n){now=1;for(int i=30;i>=0;i--){int j=now;while(j<=n&&!(a[j]&bin[i])) j++;if(j==n+1) continue;if(j!=now) swap(a[j],a[now]);for(int k=1;k<=n;k++) if(k!=now&&(a[k]&bin[i])) a[k]^=a[now];now++;}now--;
}
int main(){freopen("in","r",stdin);n=read();for(int i=1;i<=n;i++){int x=read();while(x==0&&i<n) x=read(),i++;if(x!=0) a[++p]=x;}ini();Gauss(p);int mx=0;for(int i=1;i<=now;i++) mx^=a[i];printf("%d %d\n",mx,mx^a[now]);
}

BZOJ 4269: 再见Xor [高斯消元 线性基]相关推荐

  1. 【BZOJ4269】再见Xor 高斯消元

    [BZOJ4269]再见Xor Description 给定N个数,你可以在这些数中任意选一些数出来,每个数可以选任意多次,试求出你能选出的数的异或和的最大值和严格次大值. Input 第一行一个正整 ...

  2. 【BZOJ2115】[Wc2011] Xor 高斯消元求线性基+DFS

    [BZOJ2115][Wc2011] Xor Description Input 第一行包含两个整数N和 M, 表示该无向图中点的数目与边的数目. 接下来M 行描述 M 条边,每行三个整数Si,Ti ...

  3. bzoj 2844: albus就是要第一个出场 高斯消元

    LINK 题意:看题目不如看样例解释.给出有n个数的集合,对这些子集中的数求异或,升序统计所有子集得到的数(重复会被计入),询问一个数x,问这个数出现的第一个位置 思路:在这里要求一个所有可能出现的异 ...

  4. BZOJ 2337: [HNOI2011]XOR和路径( 高斯消元 )

    一位一位考虑异或结果, f(x)表示x->n异或值为1的概率, 列出式子然后高斯消元就行了 --------------------------------------------------- ...

  5. BZOJ 2115 Wc2011 Xor DFS+高斯消元

    标题效果:鉴于无向图.右侧的每个边缘,求一个1至n路径,右上路径值XOR和最大 首先,一个XOR并能为一个路径1至n简单的路径和一些简单的XOR和环 我们开始DFS获得随机的1至n简单的路径和绘图环所 ...

  6. 线性代数五之高斯消元——[SDOI2010]外星千足虫,[HNOI2013]游走,[HNOI2011]XOR和路径,[hdu 4035]Maze

    多类型高斯消元杂题 [SDOI2010]外星千足虫 description solution code [HNOI2013]游走 description solution code [HNOI2011 ...

  7. 高斯消元简单线性代数线性基学习记录

    线性代数,唉 高斯消元 P4035 [JSOI2008]球形空间产生器 题目描述 有一个球形空间产生器能够在n维空间中产生一个坚硬的球体.现在,你被困在了这个n维球体中,你只知道球面上n+1个点的坐标 ...

  8. [BZOJ 3143][Hnoi2013]游走(高斯消元+期望)

    Description 一个无向连通图,顶点从1编号到N,边从1编号到M. 小Z在该图上进行随机游走,初始时小Z在1号顶点,每一步小Z以相等的概率随机选 择当前顶点的某条边,沿着这条边走到下一个顶点, ...

  9. 【bzoj2460】[BeiJing2011]元素 贪心+高斯消元求线性基

    题目描述 相传,在远古时期,位于西方大陆的 Magic Land 上,人们已经掌握了用魔法矿石炼制法杖的技术.那时人们就认识到,一个法杖的法力取决于使用的矿石. 一般地,矿石越多则法力越强,但物极必反 ...

最新文章

  1. 一文搞懂K近邻算法(KNN),附带多个实现案例
  2. 8.17——继续熟悉linux的命令行
  3. php(wamp安装问题)
  4. iOS逆向之旅(进阶篇) — 工具(LLDB)
  5. 构件图(Component Diagram)—UML图(八)
  6. [举一反三]使用javascript转换字符串为dom对象(字符串动态创建dom)
  7. 进程间通信之共享内存
  8. 【转】jquery文件上传插件uploadify在.NET中session丢失的解决方案
  9. 中序遍历+后序/先序遍历构建二叉树
  10. Fizz Buzz @leetcode Math
  11. Linux驱动系列目录
  12. C# PDF转图片(JPG)
  13. spring 通过yml格式配置log日志
  14. 调整计算机繁体,电脑输入法是繁体怎么办?电脑输入法变成繁体的解决办法
  15. 深度解析《ETC行业领军企业成谷科技》
  16. MATLAB06:数字图像处理
  17. 微动开关技术知识-微动开关概要
  18. 《热浪球爱战》首映 周秀娜现场超低胸打排球
  19. 合并 2 个有序列表(关键词:有序列表/有序/合并/归并)
  20. 详解jsPlumb这个javascript的可拖动连线库

热门文章

  1. Asp.Net--回调技术
  2. 解决Asp输出乱码问题
  3. LVS-DR,real-server为windows 2008的配置
  4. eclispe dev tools
  5. base64编码格式
  6. 在线等差数列项生成器
  7. linux特殊权限SUID,SGID和SBIT的介绍
  8. 如何给企业选择一款ERP系统
  9. Mysql Can't connect to MySQL server
  10. oracle instr函数详解