上一页 1 2 3 4 5 6 7 ··· 32 下一页
摘要: 注意到能与 $x$ 连边的 $y$ 是 $x$ 的补集的子集 那么就枚举之后dfs补集,每个全集再减去一位即可,这样是有传递性,保证一个连通块的所有数都能遍历到 这种位运算的可以通过增一位减一位得到传递性!!! 阅读全文
posted @ 2020-03-06 19:57 Mrzdtz220 阅读(94) 评论(0) 推荐(0) 编辑
摘要: 首先根据旋转同构,可以用burnside 设 $dp(d)$ 为长度为 $d$ 的环,旋转不同构的方案 那么答案为 $\dfrac{\sum \limits_{i=0}^{n 1} dp(\gcd(n, i))}{n}=\sum \limits_{d | n} \dfrac{dp(d)\varphi 阅读全文
posted @ 2020-03-06 16:23 Mrzdtz220 阅读(123) 评论(0) 推荐(0) 编辑
摘要: 如果不新加边,那么给每个点选一条入边即可,答案为 $\prod \limits_{i=2}^n in\_degree_i$ 加入新边后,仍按上面的方法统计答案,但是原图中可能出现了环,如果出现环,那么边 $x \to y$ 一定就在环上 那么就统计选了 $y \to x$ 的路径的方案数 设 $dp 阅读全文
posted @ 2020-03-06 09:18 Mrzdtz220 阅读(78) 评论(0) 推荐(0) 编辑
摘要: 对每一个位置 $i$,求出其上一次出现的位置 $pre_i$ 以及下一次出现的位置 $next_i$ 对一个询问来说,就是查询 $pre_i$ 在 $[0,l 1]$,$i$ 在 $[l, r]$,$next_i$ 在 $[r + 1, n + 1]$ 这个长方体内的最大值 那么可以用KD tree 阅读全文
posted @ 2020-03-05 22:59 Mrzdtz220 阅读(121) 评论(0) 推荐(0) 编辑
摘要: 调了一下午。。 属实自闭 想法很简单 同Sdoi2016游戏的做法 将路径拆成两条 $u \to lca$,$lca \to v$ 等差数列对 $u \to lca$ 路径上的点 $x$ 的影响为 $a + (dep_{u} dep_{x})\times b$ 可以拆成 $( b) \times d 阅读全文
posted @ 2020-03-05 19:01 Mrzdtz220 阅读(198) 评论(0) 推荐(0) 编辑
摘要: 可持久化Trie本质和主席树一致 但能支持求最大异或和操作 抛开这个功能测过可持久化trie去写主席树的题,好像也没快多少?可能是我写丑了 阅读全文
posted @ 2020-03-05 00:04 Mrzdtz220 阅读(140) 评论(0) 推荐(0) 编辑
摘要: 前两项为 $1$ 的斐波那契数列有一个性质 $f_{n + m} = f_{n+1}f_m + f_n f_{m 1}$ 通过拆成两个矩阵的乘积或者数学归纳法就可以得到 这里给每个位置加上 $f_{x l+1}$ $n=x,m=1 l$ 则相当于给每个位置加上 $f_{x+1}f_{1 l}+f_{ 阅读全文
posted @ 2020-03-04 20:43 Mrzdtz220 阅读(173) 评论(0) 推荐(0) 编辑
摘要: 曼哈顿距离转切比雪夫距离 把坐标变为 $(x+y,x y)$ 之后,求两点之间距离即为 $\max(|x_1 x_2|,|y_1 y_2|)$ 之后再通过扫描线,平衡树维护 $y$ 坐标,每次将前驱后继进行合并 阅读全文
posted @ 2020-03-04 15:44 Mrzdtz220 阅读(108) 评论(0) 推荐(0) 编辑
摘要: 可以发现答案不大于 $n$,因为如果都是奇数可以让它们都变成偶数 如果我们假定了一个 $\gcd$,我们就可以线性得到答案,每个数向上或者向下移动到 $\gcd$ 的倍数位置 因为答案不大于 $n$,那么就有至少有 $\lceil \frac{n}{2} \rceil$ 个数操作次数不大于 $1$ 阅读全文
posted @ 2020-03-04 10:46 Mrzdtz220 阅读(167) 评论(0) 推荐(0) 编辑
摘要: 首先建出虚树 然后就相当于多源最短路,权值为第一关键字轮数和第二关键字下标 然后dijkstra即可 建虚树过程是在维护右链,注意要把所有用到的点都初始化一遍。 阅读全文
posted @ 2020-03-04 10:37 Mrzdtz220 阅读(238) 评论(0) 推荐(0) 编辑
上一页 1 2 3 4 5 6 7 ··· 32 下一页