bzoj4269】的更多相关文章

[BZOJ4269]再见Xor Description 给定N个数,你可以在这些数中任意选一些数出来,每个数可以选任意多次,试求出你能选出的数的异或和的最大值和严格次大值. Input 第一行一个正整数N. 接下来一行N个非负整数. Output 一行,包含两个数,最大值和次大值. Sample Input 3 3 5 6 Sample Output 6 5 HINT 100% : N <= 100000, 保证N个数不全是0,而且在int范围内 题解:大水~ 在线性基上贪心得到最大值,用最大值…
4269: 再见Xor Time Limit: 10 Sec  Memory Limit: 512 MBSubmit: 131  Solved: 81[Submit][Status][Discuss] Description 给定N个数,你可以在这些数中任意选一些数出来,每个数可以选任意多次,试求出你能选出的数的异或和的最大值和严格次大值. Input 第一行一个正整数N. 接下来一行N个非负整数. Output 一行,包含两个数,最大值和次大值. Sample Input 3 3 5 6 Sa…
题目描述 给定N个数,你可以在这些数中任意选一些数出来,每个数可以选任意多次,试求出你能选出的数的异或和的最大值和严格次大值. 输入 第一行一个正整数N. 接下来一行N个非负整数. 输出 一行,包含两个数,最大值和次大值. 样例输入 3 3 5 6 样例输出 6 5 提示 100% : N <= 100000, 保证N个数不全是0,而且在int范围内   求异或最大值和严格次大值,最大值直接用线性基求即可,因为用高斯消元求出的线性基直接将所有线性基异或在一起就是最大值,所以只需要把其中最小的一个…
Description 给定N个数,你可以在这些数中任意选一些数出来,每个数可以选任意多次,试求出你能选出的数的异或和的最大值和严格次大值. Input 第一行一个正整数N. 接下来一行N个非负整数. Output 一行,包含两个数,最大值和次大值. Sample Input 3 3 5 6 Sample Output 6 5 HINT 100% : N <= 100000, 保证N个数不全是0,而且在int范围内 Solution 线性基查询第$k$小板子题.详情可以参考$YveH$学长的博客…
题目描述 给定N个数,你可以在这些数中任意选一些数出来,每个数可以选任意多次,试求出你能选出的数的异或和的最大值和严格次大值. 输入 第一行一个正整数N. 接下来一行N个非负整数. 输出 一行,包含两个数,最大值和次大值. 样例输入 3 3 5 6 样例输出 6 5 题解 高斯消元求线性基裸题 由于线性基可以表示所有能够求出的异或和,所以我们只需要考虑线性基即可. 先求出线性基,然后按照从高位到低位的贪心思想来选择. 由于每个线性基的最高位在之前都没有出现过,所以每次选择一定会使答案增大,故直接…
http://www.lydsy.com/JudgeOnline/problem.php?id=4269 裸线性基,一个数取多次就是没取... 又有了些新的理解:a数组的前now个元素是基底,也就是可以变成1的位,最大就是所有1都选,次大就是最后一个1不选 #include<bits/stdc++.h> using namespace std; typedef long long ll; ; int n, now; ll a[N], bin[]; void gauss() { now = ;…
考前挣扎 线性基裸题 mx直接求 次大直接从低到高枚举第一个非0位 然后次大就是异或上就行了[显然贪心呐qwq 不到800b可还行 //Love and Freedom. #include<cstdio> #include<cstring> #include<algorithm> #include<cmath> #define inf 20021225 #define ll long long #define pa pair<int,int> #…