对于一个区间[L,R],对于X二进制下的每一位,如果第i位1,那么对总和的贡献就是[L,R]中的元素第i位是0的元素个数,反之,所以对于X的每一位i的取值依赖于[L,R]中所有元素该位中0,1的数量,如果1居多,那我们就设置0,得到的总和就会大一点,否则就设置1,前缀和预处理一下即可。 #include <cctype> #include <cfloat> #include <cmath> #include <cstdio> #include <cstdlib> #include <cstring> #include &l...