摘要:
原题链接 题解 首先,位运算很容易想到按位枚举。而这道题的关键是如何快速求区间异或和。 对此,我们构建一个后缀异或数组即可,甚至这个数组可以进一步优化为 cnt1和cnt0 两个变量。(具体实现看code理解) code #include<bits/stdc++.h> using namespace 阅读全文
摘要:
原题链接 题解 这题用到的知识点很多, 思维+前缀异或+容斥原理。 1、题目告诉我们要找 被除数个数 是偶数个的异或和,那么什么数的 被除数 有偶数个? 答案:非完全平方数。 2、非完全平方数太多了,不好求。而我们又知道 所有序列 个数为(n+1)*n/2 所以我们只要求出序列异或和为完全平方数的个 阅读全文