题解at_abc puzzle 326

A2OJ Ladder 32 简要题解

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

题解 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

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

AT_abc265_d 题解

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

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

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

AT_abc215_d

基本概括 当解决这个问题时,我们需要找到满足条件的整数 \(k\),使得对于给定的序列 \(A=(A_1,A_2,\dots,A_N)\) 中的每个数 \(A_i\),都满足 \(\gcd(A_i, k) = 1\)。 实现思路 首先,我们可以观察到,如果 \(k\) 是 \(A_i\) 的质因数或 ......
AT_abc 215 abc AT

题解 P9229 扩展九连环

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

[题解]AT_abc267_f [ABC267F] Exactly K Steps

大家好,我是毒瘤,喜欢用玄学算法过题。 发现题解区没有这个做法,于是来发一篇。 思路 首先发现如果一个点对 \((u,v)\) 的距离为 \(d\),那么在这棵树以 \(u\) 为根时,\(v\) 的深度为 \(d\)。 Code ......
题解 267 Exactly AT_abc Steps

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

题解 P7405 [JOI 2021 Final] 雪玉

洛谷。 题意 应该好理解的。 分析 我们的所有雪球在同一时间之间的距离都是相同的,因此一段雪,要么是它左侧的第一个所取,要么右侧第一个所取,要么不被取,并且,我们每一个雪球所占有的雪是连续的一段。 我们令 \(L_i\) 表示第 \(i\) 步前所能走的最左点,\(R_i\) 表示第 \(i\) 步 ......
题解 P7405 Final 7405 2021

题解 「2019五校联考-镇海1」一棵树

题意 一棵 \(n\) 个结点的树,根节点为 \(1\),结点 \(i\) 的父亲是 \(f_i\)。\(f_1=f_0=0\)。对于每一个整数 \(i\),假如 \(f_{f_i}\) 不为 \(0\),那么就将 \(f_{f_i}\) 与 \(i\) 连上一条边。从每一个结点,每次随机向相邻的结 ......
题解 2019

bupt ai院第一次周赛题解

题目一 简单模拟题 点击查看代码 #include<bits/stdc++.h> using namespace std; #define ebk emplace_back #define x first #define y second typedef pair<int,int> PII; typ ......
题解 第一次 bupt