传送门 BZOJ没数据范围... 其实数据范围是这样的.. 前20%可以直接n^3暴力枚举每个区间 前40%可以考虑每一位,因为所有数每一位都是独立的,而和的期望=期望的和,那么可以枚举每一位,再枚举区间,最大 31*n*n 想到枚举每一位也就离正解不远了,可以dp, 对于xor有贡献的是区间xor值为1的区间,那么f[i]表示以i结尾的区间异或值为1的个数,那么xor就很好解决了 对于or,我们只需要找出所有的全为0的区间,拿总区间个数减去就好, 对于and,我们只需要找出所有全为1的区间即可…