随笔分类 -  容斥

摘要:洛谷传送门 CF 传送门 求出 \(p\) 的原根 \(g\),对每个 \(a_i\) 求出一个 \(x_i\) 表示 \(g^{x_i} \equiv a_i \pmod {p}\)(这部分可以 BSGS)。之后的表述中 \(a_i\) 指 \(x_i\)。那么集合生成方式相当于初始 \(c = 阅读全文
posted @ 2024-08-20 22:10 zltzlt 阅读(39) 评论(0) 推荐(0)
摘要:洛谷传送门 CF 传送门 首先设 \(a_i = \max\limits_{j = 1}^i p_j\),\(b_i = \max\limits_{j = 1}^i q_j\)。 直接容斥,钦定有多少值不同的 \(a_i\) 使得 \(a_i = b_i\)。然后再把钦定的每种值转化成每种值第一次使 阅读全文
posted @ 2024-03-26 22:08 zltzlt 阅读(89) 评论(0) 推荐(0)
摘要:洛谷传送门 CF 传送门 被自己的赛时智障操作气笑了。谁告诉你容斥钦定了几个要记到状态里面的。。。/tuu 显然先找“好数组”的充要条件。对原数组 \(a\) 差分,设 \(b_i = a_i - a_{i - 1}\)。那么一次可以选择一对 \((i, j)\) 满足 \(i \le j - 2\ 阅读全文
posted @ 2024-03-18 12:59 zltzlt 阅读(79) 评论(0) 推荐(0)
摘要:LOJ 传送门 考虑若已求出钦定 \(k\) 个升高的排列数量 \(f_k\),那么二项式反演就可以求出恰好 \(k\) 个升高的排列数量 \(g_k\),即: \[g_k = \sum\limits_{i = k}^n (-1)^{i - k} \binom{i}{k} f_i \]考虑求 \(f 阅读全文
posted @ 2024-02-20 18:16 zltzlt 阅读(107) 评论(0) 推荐(0)
摘要:洛谷传送门 CF 传送门 首先需要了解重心的三种定义: 删掉一个点后剩下子树大小 \(\le \frac{n}{2}\) 的点 \(\sum\limits_{i = 1}^n \text{dis}(u, i)\) 最小的点 最深的 \(sz_u \ge \left\lceil\frac{n}{2}\ 阅读全文
posted @ 2024-01-25 11:11 zltzlt 阅读(24) 评论(0) 推荐(0)
摘要:洛谷传送门 CF 传送门 考虑给定 \(b\) 如何构造 \(a\)。 拎出基环树的环部分,把这些点连同它们的边删掉(这个环一定在答案中)。递归做即可。 考虑我们在 \(a\) 的环上连一些在 \(\{b_{i, n}\}\) 中排得比 \(a_i\) 前的 \(i \to j\)。可以将问题转化为 阅读全文
posted @ 2024-01-18 17:52 zltzlt 阅读(14) 评论(0) 推荐(0)
摘要:洛谷传送门 CF 传送门 感觉这个题还是挺不错的。 考虑 F1。考察 \(a_i\) 差分后的意义,发现 \(a_i - a_{i - 1}\) 就是 \((\sum\limits_{j = 1}^{i - 1} [p_j = i]) + p_i \le i\)。 考虑将其转化为棋盘问题。在 \(( 阅读全文
posted @ 2023-12-24 11:55 zltzlt 阅读(90) 评论(0) 推荐(0)
摘要:洛谷传送门 AtCoder 传送门 第二道问号题。 设 \(A \ge B\)。我们现在将点的坐标刻画到二维平面上。相当于找到一条 \((0, 0) \to (A, B)\) 的路径,要求不能跨过直线 \(y = x\)。有 \(3\) 种移动方式: 向右移动一格。 向上移动一格。 将当前点提到直线 阅读全文
posted @ 2023-12-15 08:32 zltzlt 阅读(33) 评论(0) 推荐(0)
摘要:LOJ 传送门 组合计数神题。下文的 \(m\) 指原题面中的 \(d\),\(k\) 指原题面中的 \(r\)。 考虑最后每个人得到的宝石数量的序列 \(s_1, s_2, \ldots, s_n\),考虑这种方案的出现次数。首先要在 \(m\) 次操作中分别选 \(s_i - 1\) 次给第 \ 阅读全文
posted @ 2023-12-05 08:48 zltzlt 阅读(67) 评论(0) 推荐(0)
摘要:洛谷传送门 AtCoder 传送门 设数字 \(i\) 第一次拿到的时间为 \(t_i\),所求即为 \(E(\max\limits_{i = 1}^m t_i)\)。 施 min-max 容斥,有: \[\begin{aligned}E(\max\limits_{i = 1}^m t_i) & = 阅读全文
posted @ 2023-12-04 17:14 zltzlt 阅读(118) 评论(0) 推荐(0)
摘要:洛谷传送门 CF 传送门 不是很懂官方题解在干嘛。 设 \(g_x\) 为满足 \(x \mid f(a_i, a_j, a_k)\) 且 \(i, j, k\) 两两不同的所有无序三元组的个数。则容易容斥求出 \(h_x\) 为 \(x = f(a_i, a_j, a_k)\) 的个数。答案即为 阅读全文
posted @ 2023-11-30 21:15 zltzlt 阅读(71) 评论(0) 推荐(0)
摘要:洛谷传送门 CF 传送门 看到题目感觉很怪,没有什么很好的直接做的办法。于是考虑容斥,\(\min a_i \le x + k - 1\) 的方案数减去 \(\max a_i < x\) 的方案数即为答案。 前者的方案数是好算的。注意到只要确定了 \(\min a_i\) 和差分数组 \(a_i - 阅读全文
posted @ 2023-11-15 19:19 zltzlt 阅读(53) 评论(0) 推荐(0)
摘要:洛谷传送门 \(k\) 染色问题。给定 \(n\) 个点 \(m\) 条边无向图,求有多少种给每个点赋点权 \(a_u \in [1, k]\) 的方案,使得 \(\forall (u, v) \in E, a_u \ne a_v\)。 Subtask \(1\):\(n \le 15\)。 考虑因 阅读全文
posted @ 2023-11-14 15:25 zltzlt 阅读(139) 评论(0) 推荐(0)
摘要:洛谷传送门 AtCoder 传送门 下文令 \(n\) 为原题中的 \(K\),\(m\) 为原题中的 \(N\)。 首先概率转方案数,最后除 \(2^{nm}\) 即可。 考虑一个指数级暴力:枚举每个 bot 的终点 \(y_i\)(因为存在不能相交的限制,需要满足 \(y_1 < y_2 < \ 阅读全文
posted @ 2023-10-27 10:34 zltzlt 阅读(35) 评论(0) 推荐(0)
摘要:洛谷传送门 LOJ 传送门 两条路径的交点数量只和起点数量有关。容易发现是终点排列的逆序对数的奇偶性。求一个 \(f_{i, j}\) 表示从第 \(1\) 层的第 \(i\) 个点到第 \(k\) 层的第 \(j\) 个点的路径数量,对这个矩阵求行列式即可。 对于相交的路径数不用考虑,因为总存在和 阅读全文
posted @ 2023-10-27 08:24 zltzlt 阅读(52) 评论(0) 推荐(0)
摘要:洛谷传送门 AtCoder 传送门 首先进行一个容斥,把连通块最大值 \(= K\) 变成 \(\le K\) 的方案数减去 \(\le K - 1\) 的方案数。 考虑 dp,设 \(f_{i, j}\) 表示当前用了 \(i\) 个点,\(j\) 条边。转移即枚举其中一个连通块的大小 \(k\) 阅读全文
posted @ 2023-10-16 13:57 zltzlt 阅读(29) 评论(0) 推荐(0)
摘要:洛谷传送门 AtCoder 传送门 本质是 \(p_i \in [l_i, r_i]\) 的计数问题。 当 \(1 \le i \le n\) 时,\(l_i\) 才可能不等于 \(1\)。考虑容斥,设钦定 \(m\) 个不满足条件(上界为 \(l_i - 1\)),其余任意(上界为 \(r_i\) 阅读全文
posted @ 2023-10-03 21:36 zltzlt 阅读(15) 评论(0) 推荐(0)
摘要:洛谷传送门 AtCoder 传送门 考虑到规定单调不降比较难搞。先设 \(g_t\) 为长度为 \(t\) 的满足条件的序列个数(可重且有顺序)。求这个可以设个 dp,\(f_{d, i}\) 表示考虑到从高到低第 \(d\) 位,当前 \(t\) 个数中有 \(i\) 个仍然顶上界,并且之前的位都 阅读全文
posted @ 2023-10-03 18:13 zltzlt 阅读(37) 评论(0) 推荐(0)
摘要:CF 传送门 首先考虑没有选出的数互不相同的限制。设 \(f_m\) 为选出 \(m\) 个 \(\in [0, n]\) 的数,异或 \(\text{popcount} = k\) 的方案数。可以考虑枚举这 \(m\) 个数和 \(n\) 的 \(\text{LCP}\)(要求后一位为 \(1\) 阅读全文
posted @ 2023-10-02 22:06 zltzlt 阅读(26) 评论(0) 推荐(0)
摘要:洛谷传送门 CF 传送门 看到 \(a_{a_i}\) 和 \(a_i \in [1, n]\),果断连边 \(i \to a_i\),得到内向基环森林。 那么每次相当于把 \(a_i\) 变成自环,连边 \(i \to a_{a_i}\)。 但是每次操作都改变图的形态很不好办,考虑打标记。 每次 阅读全文
posted @ 2023-09-17 19:46 zltzlt 阅读(35) 评论(0) 推荐(0)