文章分类 -  题解

摘要:睡睡睡睡睡睡睡 阅读全文
posted @ 2024-10-27 02:08 Pwtking 阅读(166) 评论(0) 推荐(2)
摘要:传送门 观察与思考后可得以下结论: 设序列中的一个子区间中大于等于 \(k\) 的个数有 \(a\) 个,小于 \(k\) 的个数有 \(b\) 个。 若 \(a>b\),则这个区间可以全部变成大于等于 \(k\) 的数 若 \(b=0\),则一定可以在保证这段区间含 \(k\) 的情况下把这段区间 阅读全文
posted @ 2023-10-31 14:41 Pwtking 阅读(57) 评论(0) 推荐(0)
摘要:传送门 首先,有结论:\(\gcd(a,b)=\gcd(a,a+b)=\gcd(a,b,a+b)\),所以我们可以考虑每个右部点分别的贡献以降低复杂度。 为什么不从左部点进行考虑: 从左部点考虑的话,一个思路是把每一个左部点作为单独的一个 \(S\),求出所有 \(f(S)\) 的 \(\gcd\) 阅读全文
posted @ 2023-10-25 14:59 Pwtking 阅读(95) 评论(0) 推荐(0)
摘要:主要讲解线段树优化建图。 正常建图的话复杂度是平方级的,加上二分答案的复杂度直接炸。 观察到我们建图时每一个位置连边的其他位置都是一个区间,所以我们考虑线段树优化建图。核心思想是:像线段树一样的构型的连边以减少连边数量。 首先先将每个位置点排序。 方法是,构造线段树时,将每一个父亲向自己的每个儿子连 阅读全文
posted @ 2023-09-18 20:07 Pwtking 阅读(51) 评论(0) 推荐(0)
摘要:首先考虑有向无环图的情况: 我们发现,只要按照拓扑序倒序删点的话,所有的的有入度的点都是可以删掉的。 有环图: 此时,与有向无环图情况不同的地方即是多了一些强连通分量,于是考虑缩点转化为有向无环图,接下来只需考虑这些强连通分量内部如何处理即可。 若这个强连通分量有入度,画图可知只要按照一定顺序,整个 阅读全文
posted @ 2023-09-18 20:05 Pwtking 阅读(42) 评论(0) 推荐(0)
摘要:传送门 看到数据范围直接考虑费用流。 首先直接预处理出每个数的上界和下界,若上界 \(<\) 下界直接特判 \(-1\)。然后考虑构建二分图,左部点为 \(n\) 个点代表这 \(n\) 个数,即第 \(i\) 的点代表第 \(i\) 个数;右部点为 \(n\) 个点代表值域,即第 \(i+n\) 阅读全文
posted @ 2023-08-06 19:15 Pwtking 阅读(36) 评论(0) 推荐(0)
摘要:传送门 看到极小的数据范围首先想到网络流,考虑最大流。 观察到某些点停留次数有限制,考虑拆点:为了方便,我们考虑对每个点都拆为入入点和出点(其实 *,#,@ 不拆也行,因为 @ 本身没有限制,*,# 在下文将提到的与源汇点连边的时候已经限制了),情况如下: . 的情况:将入点向出点连容量为 \(1\ 阅读全文
posted @ 2023-08-06 19:12 Pwtking 阅读(46) 评论(0) 推荐(0)
摘要:传送门 主要思想:合并平衡树! (以下所有代码内容中 key 代表该节点权值,val 代表键值) 初始状态下我们可以把每个节点作为一个平衡树,接下来按照题意进行合并即可(这点其他题解说的很清楚。) 因为如果记录每一个平衡树的根的话非常难维护,所以我们不妨不记录每棵树的根节点,当用到根节点的时候直接现 阅读全文
posted @ 2023-07-10 02:30 Pwtking 阅读(55) 评论(0) 推荐(0)
摘要:~~(徒手爆切的一题还是挺爽的~~ 阅读全文
posted @ 2023-06-21 08:48 Pwtking 阅读(35) 评论(0) 推荐(0)
摘要:ACAM经典题 阅读全文
posted @ 2023-06-20 16:51 Pwtking 阅读(39) 评论(0) 推荐(0)
摘要:传送门 想出如何连边很容易:将每个点拆点为入点 \(u\) 和出点 \(u+n\),输入的每条边的 \((u,v)\) 正常从出点连向入点连上双向边,容量无穷大防止被割,即 \(u+n\to v\),\(v+n\to u\),最后跑最小割即可。 你不会还要问为什么拆点吧? 这说明你刷题还是太少。 因 阅读全文
posted @ 2023-06-12 22:00 Pwtking 阅读(83) 评论(0) 推荐(0)
摘要:类)组合权值模型另一种体现 阅读全文
posted @ 2023-06-12 20:28 Pwtking 阅读(47) 评论(0) 推荐(0)
摘要:费用流优化 阅读全文
posted @ 2023-06-10 10:12 Pwtking 阅读(31) 评论(0) 推荐(0)
摘要:传送门 主要思想:拆点,黑白染色。 首先能想到的是只在 \(x+y\) 为奇数的格子上放柱子,原因显然。 接下来转化题意:求最小不稳定数不就是求放柱子能减少的最大不稳定数,于是我们现在着力解决放柱子能减少的最大不稳定数。 题目已经暗示我们要黑白染色,于是网格点被染为两类: \(x+y\) 为奇数(我 阅读全文
posted @ 2023-06-10 08:09 Pwtking 阅读(37) 评论(0) 推荐(0)
摘要:传送门 分析题意,意思是不能让敌人通过格子之间的移动走出边界,而阻止敌军从一个格子到另一个子的途径是什么——花费敌军要到的格子所需的代价来建墙。 由此如果我们把每个格子之间都建一条边权为终点格子的建墙代价的边,再将源点连向每个敌人边权为无穷大,再把每个边界点向汇点连无穷大的边,最后求一下这张图的最小 阅读全文
posted @ 2023-06-06 18:30 Pwtking 阅读(39) 评论(0) 推荐(0)
摘要:传送门 知识点:最大权闭合图模型! 题目的翻译便是这个模型的适用条件。 此模型建图方式: 首先建立超级源点 \(s\),和超级汇点 \(t\),并新建 \(m\) 个点 \(p_i,i \in [1,m]\) 使一一对应每一条边,将原来的 \(n\) 个点的编号初始化为 \(p_i,i \in[m+ 阅读全文
posted @ 2023-06-06 18:29 Pwtking 阅读(45) 评论(0) 推荐(0)
摘要:传送门 主要的算法匈牙利二分图匹配和分类讨论连边大家讲的已经很清楚了,本篇来着重讲一下本题难点:使答案字典序最小。 方案: 连边的时候,将每个位置作为左部,每个位置的变换值作为右部。将左部每个点的连边的右端点大小按升序排序,最后对每个左部点做 dfs 的时候倒序做。 感性证明: 匈牙利的主要流程是: 阅读全文
posted @ 2023-06-06 18:26 Pwtking 阅读(47) 评论(0) 推荐(0)
摘要:传送门 每条边只有两种状态:删或不删,并且考虑到每条边删与不删对其他边是否删边的情况有一定逻辑关系,考虑 2-SAT。 又看到要求最大值最小,考虑二分答案。 建图的思路: 对于一个顶点 \(u\),包含这个端点的连边为 \(u_i\),\(u_{i,1}\) 代表边 \(u_i\) 删去,\(u_{ 阅读全文
posted @ 2023-06-06 18:25 Pwtking 阅读(42) 评论(0) 推荐(0)
摘要:传送门 对于这样的关于点的连通块问题,首先想到点双。 我们先将整个图所有的割点和点双全部找出并记录,接下来的方案数就和每个点双内的割点数目有关。 枚举每个点双,对于每个点双分三种情况讨论: 将需要涂黑的点的数量记为 \(ans_1\),将方案数记为 \(ans_2\),该点双内的所有的点数为 \(t 阅读全文
posted @ 2023-06-06 18:24 Pwtking 阅读(40) 评论(0) 推荐(0)
摘要:传送门 介绍一种 2-sat 的新做法。 考虑在建图时开三倍数组:\([1,n]\) 代表选择 A 任务,\([n+1,2n]\) 代表选择 B 任务,\([2n+1,3n]\) 代表选择 C 任务。 在此基础上分四种情况讨论: 分别设每一对关系中第一个人的年龄为 \(a\),第二个人的年龄为 \( 阅读全文
posted @ 2023-06-06 18:24 Pwtking 阅读(36) 评论(0) 推荐(0)