03 2018 档案
摘要:题意: n个数m次查询,每次查询给出l,r求子区间异或和为k的个数。 题解: 预处理前缀异或和,因为是区间相减求满足的所以左区间要减1。要注意数组要开2e6因为两个1e6的数异或可能会更大,答案也要开long long。 #include <bits/stdc++.h> using namespac
阅读全文
摘要:题意: m次查询。每次查询范围[L,R]中出现次数等于该数字的数字个数。 题解: 由于分块,在每次询问中,同一块时l至多移动根号n,从一块到另一块也是最多2倍根号n。对于r,每个块中因为同一块是按y排序,所以最多移动根号n;一共根号n个块。注意l和r要分开考虑。 要注意的是这道题需要离散一下数据。
阅读全文