摘要: 如果我们对给定的序列求出异或意义下的前缀和,哪么题意变为求满足 $sum_{i-1} \operatorname{xor} sum_j=k$ 的 $(i,j)$ 数量。 由于 $x \operatorname{xor} y=z$ 等价于 $x \operatorname{xor} z=y$,所以在加 阅读全文
posted @ 2022-10-02 14:50 Day_Dreamer_D 阅读(202) 评论(0) 推荐(0)
摘要: 莫队板子。 //P2709 小B的询问 #include <bits/stdc++.h> using namespace std; typedef long long ll; const int MAXN=50005; struct Query { int l,r,id; }q[MAXN]; int 阅读全文
posted @ 2022-10-01 20:15 Day_Dreamer_D 阅读(193) 评论(0) 推荐(0)
摘要: 主要思路 显然我们需要求出所有范围内的合法幸运号码,然后容斥。 容斥就是暴搜+剪枝。 剪枝&优化 一个幸运号码是另一个幸运号码的倍数,则这个数不会产生任何贡献,剪枝。 选定数的 LCM 大于 $r$ 则直接退出。 将幸运号码从大到小排序,这样搜索的时候能更快突破上界。 对于所有大于 $\dfrac{ 阅读全文
posted @ 2022-10-01 18:49 Day_Dreamer_D 阅读(333) 评论(0) 推荐(0)
摘要: 区间相同颜色个数,可以离线,我们想到用普通莫队解决。 设 $cnt_i$ 表示颜色为 $i$ 的袜子的数量,则取到两只同颜色的袜子的方案数为 $\sum^n_{i=1}cnt_i \cdot (cnt_i-1)(cnt_i \ge 2)$,总方案数为 $(r-l+1) \cdot (r-l)$。 注 阅读全文
posted @ 2022-10-01 18:21 Day_Dreamer_D 阅读(228) 评论(0) 推荐(0)
摘要: 简化题意:求原图的补图的连通块个数。 众所周知,补图有这样一条性质:若图不连通,则其补图一定连通。证明略。 于是我们考虑枚举满足 $vis_{\text{u}}=0$ 的点 $\text{u}$,然后将其 push 进队列并打上标记(vis)。然后枚举与 $\text{u}$ 在补图上相邻的且 $v 阅读全文
posted @ 2022-09-14 21:45 Day_Dreamer_D 阅读(334) 评论(0) 推荐(0)
摘要: 本题类似普通二维树状数组,只不过是把操作改为异或。 令 $d_{i,j}$ 为二维数组异或意义下的差分数组,则 $(x1,y1)$ 至$(x2,y2)$ 的异或和为: $$\sum^{\text{xor}}_{x1 \le i \le x2} \sum^{\text{xor}}_{y1 \le j 阅读全文
posted @ 2022-09-13 20:12 Day_Dreamer_D 阅读(305) 评论(0) 推荐(0)
摘要: 树链剖分板子,两次 DFS 预处理之后用线段树维护,问题转化为单点修改,区间查询(求和、最大值),对于询问路径跳到 LCA 上再查询即可。 //P2590 [ZJOI2008]树的统计 #pragma GCC optimize("Ofast") #include <bits/stdc++.h> us 阅读全文
posted @ 2022-09-12 16:19 Day_Dreamer_D 阅读(353) 评论(0) 推荐(0)
摘要: 错误示范:倍增+暴力 开始看到这题时限 6s 本来想着来一发暴力区间倍增 LCA,后来发现是多测之后自然凉凉,准保 T 飞。 然而没有 T,acc 上 RE(ReCoders),HDU WA。 正解:树剖+线段树 维护区间你想到了什么?当然是线段树啊! 分别考虑线段树的 build 和 query 阅读全文
posted @ 2022-09-11 15:17 Day_Dreamer_D 阅读(289) 评论(0) 推荐(0)
摘要: 树状数组板子,单点修改,区间查询,注意处理读入字符的问题。 //7961 Problem D:【省选基础数据结构 树状数组】树状数组 #include <bits/stdc++.h> using namespace std; typedef long long ll; const int MAXN= 阅读全文
posted @ 2022-09-10 14:46 Day_Dreamer_D 阅读(340) 评论(0) 推荐(0)
摘要: 本题解来自于洛谷大佬@_HMZ_。 大概题意:给一张无向图,将这张图分为两个点集,每个点集构成的图是一个完全图(即团),使得两张完全图的边总数最小。 我们知道,一张完全图的边数是 $\frac{n\times(n-1)}{2}$。 假设第一个点集的点数是 $n$,第二个点集的点数是 $m$, 边数就 阅读全文
posted @ 2022-07-21 16:28 Day_Dreamer_D 阅读(78) 评论(0) 推荐(0)