hdu3949】的更多相关文章

HDU3949 XOR Problem Description XOR is a kind of bit operator, we define that as follow: for two binary base number A and B, let C=A XOR B, then for each bit of C, we can get its value by check the digit of corresponding position in A and B. And for…
给你n个数,问你将它们取任意多个异或起来以后,所能得到的第K小值? 求出线性基来以后,化成简化线性基,然后把K二进制拆分,第i位是1就取上第i小的简化线性基即可.注意:倘若原本的n个数两两线性无关,也即线性基的大小恰好为n时,异或不出零,否则能异或出零,要让K减去1. 这也是线性基的模板. #include<cstdio> #include<cstring> using namespace std; typedef long long ll; ll d[64],p[64]; int…
[题目大意] 给定一个数组,求这些数组通过异或能得到的数中的第k小是多少. 传送门:http://vjudge.net/problem/HDU-3949 [题解] 首先高斯消元求出线性基,然后将k按照二进制拆分即可. 注意当高斯消元结束后若末尾有0则第1小是0 特判一下然后k--. 然后HDU输出long long是用%I64d 无论C++还是G++都是.(虽然我用了lld也AC了) #include<iostream> #include<cstdio> #include<c…
XOR Time Limit: 2000/1000 MS (Java/Others)    Memory Limit: 32768/32768 K (Java/Others)Total Submission(s): 1364    Accepted Submission(s): 402 Problem Description XOR is a kind of bit operator, we define that as follow: for two binary base number A…
XOR Time Limit: 2000/1000 MS (Java/Others)    Memory Limit: 32768/32768 K (Java/Others)Total Submission(s): 1648    Accepted Submission(s): 503 Problem Description XOR is a kind of bit operator, we define that as follow: for two binary base number A…
给定n个整数,将数分解成01序列,由这n个01序列构成矩阵,这n个数构成线性空间,这就是异或空间 将这个矩阵高斯消元,求出t个主元,那么由着t个主元构成的线性空间里总共有2^t个数 设这t个数分别是a1,a2,a3,a4,...at,每个数代表的主元为二进制上的一位1,显然选a1的情况组成的数,必定比不选a1的情况组成的数要大 比如a1...a5转换成二进制后将主元取出来就是 1 1 1 1 1 那么异或空间中,(为了对应整齐,将第1小的数改为第0小,依次类推) 最小(0)的数就是 0 0 0…
嘟嘟嘟 集训的时候发现自己不会线性基,就打算学一下. 这东西学了挺长时间,其实不是因为难,而是天天上午考试,下午讲题,结果晚上就开始颓了. 今天总算是有大块的时间好好学了一遍. 这里推荐menci大佬的博客:线性基学习笔记 这道题就是求一个集合的第\(k\)小亦或和. 首先线性基的概念.构造方法什么的看上面的blog就好啦. 这里补充一点,只有求第\(k\)小(大)的亦或和的时候才用把每一位独立开来,即必须满足\(p[i] = 2 ^i\).其他的操作(比如亦或最大值)就不用了. 那么现在我们已…
http://acm.hdu.edu.cn/showproblem.php?pid=3949 求n个数的异或和第k小. 参考:https://blog.sengxian.com/algorithms/linear-basis 没了. #include<cstdio> #include<iostream> #include<cstring> #include<vector> #include<algorithm> using namespace s…
题目大意:求xor所有值的第k小,线性基模板题. #include<cstdio> #include<cstring> #include<algorithm> #include<cstdlib> #include<iostream> #include<cmath> using namespace std; typedef long long ll; ; ll ],a[],n,m; //构造线性基,也可用来判断x是否存在,最后返回是否等…
题目链接:http://acm.hdu.edu.cn/showproblem.php?pid=3949 XOR Time Limit: 2000/1000 MS (Java/Others)    Memory Limit: 32768/32768 K (Java/Others)Total Submission(s): 4731    Accepted Submission(s): 1658 Problem Description XOR is a kind of bit operator, we…