题解codeforces round 879

【题解 ABC180F】 Unbranched

[ABC180F] Unbranched 题面翻译 求 \(N\) 个点,\(M\) 条边且满足以下条件的图的数量: 图中无自环; 每个点度数最多为 \(2\); 连通块大小的最大值恰好为 \(L\)。 答案对 \(10^9+7\) 取模。 \(2\le N\le300\),\(1\le M,L\l ......
题解 Unbranched 180F ABC 180

A2OJ Ladder 32 简要题解

https://earthshakira.github.io/a2oj-clientside/server/Ladder32.html 只记录 Difficulty level >= 8 的。有很多题是口胡的。写了的会标注提交记录。还有些很久以前写过的题就懒得搬提交记录了。任何的 * 都表示该段的后 ......
题解 简要 Ladder A2OJ 2OJ

CodeForces 1709F Multiset of Strings

洛谷传送门 CF 传送门 考虑若确定了所有 \(c_s\),如何计算集合最大大小。 下文令原题面中的 \(f\) 为 \(m\)。 发现我们可以类似倒推地确定。比如若 \(n = 3\),\(c_{00} = \min(c_{000}, c_{001})\),\(c_{01} = \min(c_{0 ......
CodeForces Multiset Strings 1709F 1709

题解 P7972【[KSN2021] Self Permutation】

怎么其他两篇题解都是 \(O(n\log n)\) 的,来发一个 \(O(n)\) 做法,当考前复习了。 对原序列建出小根笛卡尔树,节点编号与原序列中的下标相同。记 \(T_u\) 表示以 \(u\) 为根的子树,\(lc(u),rc(u)\) 分别表示 \(u\) 的左儿子和右儿子。 设 \(f_ ......
题解 Permutation P7972 7972 2021

CF73D题解

首先将题意转化一下,假设我们在第一步中将原图划分成了 \(p\) 个连通块,计第 \(i\) 连通块大小为 \(siz_i\),那么每个连通块可以向外连 \(\min{(k,a_i)}\) 条边。而使原图联通显然至少需要 \(p-1\) 条边,形式话的来讲,我们能在第二步使图联通这个条件等价于 \( ......
题解 73D CF 73

[ARC106F] Figures 题解

题意 给定 \(N\) 个带有若干洞的节点,其中第 \(i\) 个点上有 \(d_i\) 个洞。 先可以在两个不同的节点的洞之间连边,一个洞最多连一条边,求使得最终形成的图是一棵树的方案数,对 \(998244353\) 取模。 洞之间相互区分,两个方案不同当且仅当存在一条边在两个方案中的连的洞不同 ......
题解 Figures 106F ARC 106

P9400 题解

blog。很 naive 的题,写这篇题解,主要是现有题解都用的线段树 / 平衡树,让我感到很难绷。 一眼 DP。\(dp_{i,j}\) 表示前 \(i\) 个宿舍,现在有连续 \(j\) 个灯亮大于 \(B\),方案数。 \(dp_{i,0}=\max(\min(B, r_i) - l_i + ......
题解 P9400 9400

CF8E 题解

blog。抽象意义上单杀了。 首先第一位必定为 \(0\),然后取反串就不用去考虑了。 \(n\le50\),考虑爆搜。搜整个串的前一半(设半长为 \(M=\left\lfloor\dfrac n2\right\rfloor\),前一半的串在十进制下值为 \(v\)),后半段的数量可以计算: 整个串 ......
题解 CF8E CF8 CF 8E

CodeForces 1895G Two Characters, Two Colors

洛谷传送门 CF 传送门 要求最大化收益加上支出,又因为每个字符有染红和染蓝两种选择,考虑最小割模型。可以看成是一开始先获得 \(r_i + b_i\) 的收益,然后对于每个 \(0\),连边 \((S, i, b_i), (i, T, r_i)\);对于每个 \(1\),连边 \((S, i, r ......
CodeForces Characters Two Colors 1895G

feecle 的 CF 简单题精选集题解

feecle 的题单 . 后文复杂度分析中默认 \(v\) 是值域 . 目录CF1292B Aroma's Search (*1700)CF1304C Air Conditioner (*1500)CF1313D Happy New Year (*2500)CF1322B Present (*210 ......
题解 feecle CF

P7701 [CCC2014] 提前交卷 题解

目录DescriptionSolutionCode Description 在一个教室里有 \(n\) 排座位,每排有 \(6\) 个,从左至右标号分别为 ABCDEF,其中 C 和 D 中有过道,通往教室前端和后端的两个房间,每个房间最开始没有人,每个座位上开始都有人。 有 \(m\) 个不同的学 ......
题解 P7701 7701 2014 CCC

赛前集训11天题解大总

Day 1 kitty 核心思路:将转移过程中的方案加入转移矩阵,边转移边累加 string dp设计:\(f[i][x][y]\) 表示长度为 \(i\),第一段以 \(x\) 结尾,且 \(x\leqslant p\),第二段以 \(p\) 开头,以 \(y\) 结尾的两段完全相同的序列的对数。 ......
题解

Q6.4.6.2. 配对1 题解

原题链接 \(b\) 的顺序与答案无关,先排序。能与 \(a_i\) 配对的肯定是 \(b\) 的末尾一段,因为 \(a_i+b_j\ge h\),那么一定有 \(a_i+b_{j+1}\ge h\)。 设 \(c_i\) 为与 \(b_i\) 配对的 \(a\) 的个数,显然 \(c\) 是单调不 ......
题解 Q6

题解:Feel Good

题目链接 依然枚举每个位置作为最小值的情况,记录“值/下标”二元组,按第一维从大到小排序后,每次将第二位的位置在序列中标成 \(1\),那么选择的一定是序列里一个 \(1\) 的极长段。加入一个位置检查其左右是否加入过,如果加入过就用并查集合并掉,同时维护极长段的和/左右端点是简单的,复杂度 \(\ ......
题解 Feel Good

[NOIP2022] 建造军营 题解

[NOIP2022] 建造军营 题解 Part I 观察 注意到如果删掉的边在一个边双连通分量里面,那么无论如何都不会影响 A 国,所以 B 国只会删掉桥,于是把图边双缩点之后,同一个边双里面的点要么都不选,要么随便选至少一个。 Part II DP 再次发现军营一定是一个极大的连通块,所以可以考虑 ......
题解 军营 NOIP 2022

[题解] CF176E Archaeology

Archaeology 有一颗带权树,有三个操作: 给一个点打上标记。 删除一个点的标记。 查询有标记的点的导出子树的边权和。 \(n, q \le 10^5\)。 求的实际上就是虚树的大小,求这个有一个常用的方法就是把点按 dfn 排序后相邻点对(首尾也算相邻)之间的距离和除以 2。 所以我们可以 ......
题解 Archaeology 176E 176 CF

CF276C题解

这道题的思路非常简单,经过对样例的分析,我们发现,所有区间的总和为: $\sum_{i = 1}^{n} a_i \times d_i $(其中 $a_i$ 为原数组的第 $i$ 项,$d_i$ 为第 $i$ 个元素被区间覆盖的次数) 这里有一个小细节:对于某一个元素被覆盖的次数我们可用差分进行优化 ......
题解 276C 276 CF

CF1815A 题解

题意 给出一串数,请问,通过将 \(a_i\) 和 \(a_{i+1}\) 同时加 \(1\) 或减 \(1\)若干次,能否使它单调不减? 思路 我们发现,如果要让 \(a_i\) 和 \(a_{i - 1}\) 满足单调不减,可以通过修改 \(a_i\) 和 \(a_{i+1}\) 让 \(a_i ......
题解 1815A 1815 CF

P5009 [yLOI2018] 不老梦 题解

这个小丑看了好久题目才发现保证 \(t\) 不降。 好像与其他题解做法稍有不同。 思路 其他题解的标记做法非常复杂,怎么办。 我们可以使用适用性可加强大的矩阵乘法。 我们考虑维护: \[\begin{bmatrix} \sum v&\sum a\times b&\sum a&\sum b&len\\ ......
题解 P5009 5009 2018 yLOI

AT_abc265_d 题解

### 题意 给出一串数,请尝试在这串数中找到三段**连续**的子段,使得这三个子段的和分别为 $P$、$Q$ 和 $R$。问:是否可行? ### 思路 通过观察,观察我们可以发现,其实我们可以根据题目的要求写出一段关系式: $A+P+Q+R+B$(其中 $A$ 表示被选子段前面没被选的子段和,其中 ......
题解 AT_abc 265 abc AT

Educational Codeforces Round 94 (Rated for Div. 2) D. Zigzags 题解

题意 给你一个数组 \(a1,a2…an\) 请计算有多少个四元组 \((i,j,k,l)\) 符合以下条件: \(1 <= i < j < k < l <= n\) \(a_i=a_k \ \&\&\ a_j=a_l\) \(4<=n<=3000,1<=a_i<=n\) \(input\) 2 5 ......
题解 Educational Codeforces Zigzags Round

B3871 题解

题目链接 题意简述 给定一个正整数 \(N\),将它的因数分解式按规定输出。 题目分析 模拟题意即可。 具体地,我们可以枚举 \(2\) 到 \(\lfloor \sqrt N \rfloor\) 中所有数 \(i\),如果 \(i\) 能整除 \(N\),则不断地从 \(N\) 中除掉 \(i\) ......
题解 B3871 3871

Tree MST 题解

洛谷 AT 完全图的最小生成树是不好求的,但是发现 \(\mathcal{O}(n^2)\) 级别的边中显然有很多都是没有用的,这种时候可以考虑分治。 显然如果对 \(E'(E'\in E)\) 求 MST,没有选择的边一定也不在最后的 MST 的边集中。于是就让选出的边集的并等于原图,然后再求一遍 ......
题解 Tree MST

CF1436E Complicated Computations 题解

CF1436E Complicated Computations mex的定义是:一个区间中没有出现过的数中最小的整数。 对于一个区间,当正整数x在区间中没有出现过、[1, x - 1](整数)在区间中全部出现过,那么正整数x就是该区间的mex 正整数x在区间中没有出现过 我们一共有n个数字,所有的 ......
题解 Computations Complicated 1436E 1436

【题解 P1552】 派遣

[APIO2012] 派遣 题目背景 在一个忍者的帮派里,一些忍者们被选中派遣给顾客,然后依据自己的工作获取报偿。 题目描述 在这个帮派里,有一名忍者被称之为 Master。除了 Master 以外,每名忍者都有且仅有一个上级。为保密,同时增强忍者们的领导力,所有与他们工作相关的指令总是由上级发送给 ......
题解 P1552 1552

NOIP2022 题解

去年今时,我得了 100 + 0 + 0 + 8 分,太抽象了 QwQ 所以为什么今天才写这个东西?因为今天才做完了 T2…… [NOIP2022] 种花 简单前缀和优化 DP,不谈。 [NOIP2022] 喵了个喵 非常高级的构造题。 看到 \(k = 2n - 1/2\),我们可能会想到每一个栈 ......
题解 NOIP 2022

CodeForces 1895E Infinite Card Game

洛谷传送门 CF 传送门 容易转化成经典的有向图博弈模型。每张牌建一个点,若 \(x\) 能打败 \(y\) 就连一条 \(x \to y\) 的边。入度为 \(0\) 的点为必败态,之后类似拓扑排序倒推即可。 具体就是若存在边 \(u \to v\),若 \(u\) 为必败态则 \(v\) 为必胜 ......
CodeForces Infinite 1895E 1895 Card

CodeForces 1895F Fancy Arrays

洛谷传送门 CF 传送门 看到题目感觉很怪,没有什么很好的直接做的办法。于是考虑容斥,\(\min a_i \le x + k - 1\) 的方案数减去 \(\max a_i < x\) 的方案数即为答案。 前者的方案数是好算的。注意到只要确定了 \(\min a_i\) 和差分数组 \(a_i - ......
CodeForces Arrays 1895F Fancy 1895

题解 P9229 扩展九连环

洛谷。 题面 初始状态为全是 \(0\),将某一为变化的前提是当前节点的前缀(不包括当前节点)是 \(s\) 串的一个后缀,每次变化需要 \(1\) 的代价。问最后要使所有都为 \(1\) 的最小代价。 分析 很有意思的一道题,感觉玩起来跟喵了个喵一样上头。 首先,我们肯定是要先让 \(n\) 这个 ......
九连环 题解 P9229 9229

Q7.4.1.3. 产品销售 题解

原题链接 连 \(S\to A_i\),流量 \(D_i\),费用 \(P_i\),表示最多进货 \(D_i\),成本为 \(P_i\)。 连 \(A_i\to T\),流量 \(U_i\),费用 \(0\),表示卖出。 连 \(A_i\to A_{i+1}\),流量 \(+\infty\),费用 ......
题解 产品销售 产品 Q7