摘要: 题意 链接 令 \(G(n)\) 为 \(n\) 个点的无向简单图的集合,\(f(G)\) 为 \(G\) 的所有极大连通块中树的个数。 求 \[ \sum_{G(n)} f^k(G) \] \(n \le 10^4, k \le 20, T \le 100\) \(n \le 5 \times 1 阅读全文
posted @ 2020-06-16 12:28 RiverHamster 阅读(208) 评论(0) 推荐(0) 编辑
摘要: Luogu P6570 令 \(n\) 为值域。 首先有个 \(\mathcal O(3^{\log_2n}) = \mathcal O(n ^ {1.5})\) 的子集 DP。 式子很像子集卷积,但如果把每个数依次卷起来复杂度过高,不可接受。 考虑分组,发现有相同一个二进制位的数必然不会被卷到一起 阅读全文
posted @ 2020-06-07 10:12 RiverHamster 阅读(167) 评论(0) 推荐(0) 编辑
摘要: F,G题的题解 阅读全文
posted @ 2020-05-18 23:29 RiverHamster 阅读(145) 评论(0) 推荐(0) 编辑
摘要: 本题有向量做法,但因为要不断地将位置和时间相互转化,比较麻烦。 因为研究的对象是时间 $t$,可以建立 $x, y$ 关于 $t$ 的参数方程,这样可以表示出任意直线。 显然二分答案 $r$,需要求出直线和点,点和点之间距离在 $r$ 以内的区间,然后对于每个点暴力建图检测。 直接解二次方程得出两个 阅读全文
posted @ 2020-05-17 17:50 RiverHamster 阅读(144) 评论(0) 推荐(0) 编辑
摘要: 做法 结论 如果图的所有连通块的点数都是偶数,则可以选出一个生成子图,满足点的度数均为奇数。 首先因为度数和是偶数,所以如果每个点的度数是奇数,点数一定是偶数。 然后在一个偶数连通块内任选一个有根生成树,自下而上地对于度数为偶数的点删去它与父亲的连边。注意到度数和是偶数,而除根之外的所有点度数都被调 阅读全文
posted @ 2020-05-02 10:31 RiverHamster 阅读(194) 评论(0) 推荐(0) 编辑
摘要: "CF 官网链接" "CF.ML 链接" $N \le 5000, Q \le 10^5$ $N \le 3 \times 10^5, Q \le 3 \times 10^5$ 思路 这是一道二维数点题。 只考虑 $dir = 1$,记一个三角形直角顶点 $(p, q)$ ,直角边长 $r$ 考虑斜 阅读全文
posted @ 2020-03-30 08:37 RiverHamster 阅读(468) 评论(0) 推荐(0) 编辑
摘要: 题意 给定一些整数,都在 $[1, 4]$ 以内,每次操作可以把一个整数拆成两个 $[1, 3]$ 内的整数,或删掉 $n \in [1, 4]$ 个 $n$,不能操作输,则问先手是否必胜。 $a, b, c, d \le 10^{10000}$ 思路 这是一道找规律题。 可以对所有状态进行分类,记 阅读全文
posted @ 2020-03-27 20:04 RiverHamster 阅读(152) 评论(0) 推荐(0) 编辑
摘要: 思路 很明显 prufer 序列,度数为 $d_i$ 的点在 prufer 序列中出现的次数为 $d_i 1$。 代入 $n$ 个值得出每个度数的价值,问题就是要背包出 $n 2$ 个点,求最大的价值。 可以 $\mathcal O(n^2 \log n)$ 倍增 DP,但有更优的做法。 先假设序列 阅读全文
posted @ 2020-03-21 21:36 RiverHamster 阅读(197) 评论(0) 推荐(0) 编辑
摘要: 题意 不定方程解的计数问题 $$ \sum_{x_1+x_2+\cdots + x_m = N, x_i \in \N} \prod x_i ^ {K_i} $$ $\sum K_i \le 10^5, m \le 10^5$ $N \le 10^7$ (记$0^0 = 1$) 思路 首先这个式子的 阅读全文
posted @ 2020-03-14 20:42 RiverHamster 阅读(201) 评论(0) 推荐(0) 编辑
摘要: 题意 给定序列 $a$,现在在 $a$ 中随机选出一个可重集 $S$ $S$ 有序,求 $$\sum_{i=1}^{|S| 1} S_i S_{i+1}$$ 的期望,支持修改。 $n, q \le 3 \times 10^5$ 思路 首先集合数是 $2^n$ ,转成数数。 然后发现求和之间没有什么关 阅读全文
posted @ 2020-03-09 21:50 RiverHamster 阅读(127) 评论(0) 推荐(0) 编辑
摘要: 思路 对于 并不好考虑,可以针对 考虑。 发现每次移动会在一堆 之间移动把一个 移动 $2$ 位,因此只需要记录所有 位置的奇偶性即可,具体实现可以用 Hash,对开头奇数/偶数分别开 Hash 表记录。 这里 Hash 实现有一个方法:(BKDRHash) $$h_i = ph_{i 1} + s 阅读全文
posted @ 2020-03-08 16:34 RiverHamster 阅读(163) 评论(0) 推荐(0) 编辑
摘要: 题意 给定一棵树,每次可以删掉一条边在加上另一条边,使它仍是一棵树,求操作至多$k$次可以得到的树的形态数。 判定形态不同:一条边$(x, y)$在第一棵树中出现,在另一棵树中不出现。 $0 \le k \le n \le 50, n \ge 1$ 思路 其实有一种 Matrix Tree 定理+插 阅读全文
posted @ 2020-03-01 14:01 RiverHamster 阅读(418) 评论(0) 推荐(1) 编辑
摘要: 题意 每次随机一个二元组$(i, j)$,交换$(a_i, a_j)$,给定一个$1 \sim n$排列$\{a\}$,求期望交换多少次后,这个排列会变得有序。 $n \le 20$ 暴力 一个很显然的暴力是,枚举所有的排列,对每个排列枚举所有的交换方案,然后对排列康托展开一下,列方程组求解:(以下 阅读全文
posted @ 2020-02-29 19:53 RiverHamster 阅读(853) 评论(0) 推荐(0) 编辑
摘要: 首先对$\operatorname{lcm}$按各个质因子的贡献处理。 设当前质因子为$p^q$,需要计算出$\operatorname{lcm}$含$p^q$的$\gcd$和。 这里计算$\operatorname{lcm}$恰好含有$p^q$的不方便,可以设$\operatorname{lcm} 阅读全文
posted @ 2020-02-23 16:10 RiverHamster 阅读(161) 评论(0) 推荐(0) 编辑
摘要: 区间DP + 组合计数 设$f(i, j)$为只考虑$[i, j]$段,且$i,j$能够相遇的概率。 特别地,设$f(0, i)$为$i$能打败左边所有人的概率,$f(i, n+1)$为$i$能打败右边所有人的概率。 转移只需要枚举中间点$k$,考虑最后剩下三个人$(i, k, j)$,有一半概率抽 阅读全文
posted @ 2020-02-15 14:59 RiverHamster 阅读(158) 评论(0) 推荐(0) 编辑
\