文章分类 - acwing
note
    
            
    树形DP
    
            
            
        
摘要:## 树形DP ## 例题 ### 树的直径 [题目🔗](https://www.acwing.com/problem/content/description/1074/) 一棵树中,最大的$dist[x][y]$, $x, y \in V$ 求解方法: 1. 任取一个点作为起点$r$, 找到离$
        阅读全文
            
        
            
    数位DP复习
    
            
            
        
摘要:## 数位DP > 技巧:某个区间内满足某个性质的数的个数 > > 1: $[X, Y] \rightarrow F(Y)-F(X-1)$ > > 2:从**树**的角度来考虑 ## 例题 ### 度的数量 [题目🔗](https://www.acwing.com/problem/content/
        阅读全文
            
        
            
    估计人数 - 最小路径重复点覆盖
    
            
            
        
摘要:## 估计人数 ## 题目 [估计人数](https://www.lanqiao.cn/problems/235/learning/?page=1&first_category_id=1&sort=students_count&tags=%E6%9C%80%E5%B0%8F%E8%B7%AF%E5%
        阅读全文
            
        
            
    小数第n位-快速幂
    
            
            
        
摘要:## 题目链接 [小数第n位](https://www.lanqiao.cn/problems/116/learning/?first_category_id=1&page=1&sort=students_count&second_category_id=3&tags=%E5%9B%BD%E8%B5
        阅读全文
            
        
            
    二分图复习
    
            
            
        
摘要:## 二分图复习 ## 相关概念 * 匹配: 一个图是一个匹配,是指这个图中任意两条边都没有公共顶点,每个顶点至多连出一条边,而每一条边都将一对顶点相匹配。 * 极大匹配 	图$G$的一个极大匹配是这样的一个匹配,他不可能是图$G$的任何一个匹配的真子图。如果$M$是$G$的一个极大匹配,则$G$
        阅读全文
            
        
            
    HBCPC 2020 phobia 二分答案+最长上升子序列
    
            
            
        
摘要:HBCPC 2020 phobia 题目 People with social phobia hate the moment when meeting some acquaintances on the street. So they will try to avoid any chance of 
        阅读全文
            
        
            
    树上差分与前缀学习
    
            
            
        
摘要:树上前缀和 求前缀和,我们一般默认$w[i]$ 表示该节点到根节点的权值和,采用自顶向下更新。 点权前缀 x到y路径上的和为: $$ sum_x + sum_y - sum_{lca}- sum_{fa_{lca}} $$ 边权前缀 x到y的路径上的和为: $$ sum_x + sum_y - 2 
        阅读全文
            
        
            
    次小生成树学习
    
            
            
        
摘要:关于树的定义 有$n$个节点, $n - 1$条边的连通无向图 无向无环的连通图 任何两个节点之间有且仅有一条简单路径的无向图 任何边均为桥的连通图(除去该边构成两个连通图) 次小生成树 非严格次小生成树 定义 在无向图中,边权和最小的满足边权和 大于等于 最小生成树边权和的生成树。 求解方法 求出
        阅读全文
            
        
            
    走廊泼水节-Kruskal算法扩展
    
            
            
        
摘要:走廊泼水节 题目 346. 走廊泼水节 思路 	考虑$N$个节点数,将最小生成树扩充为完全图($N$个点, 每个点$N - 1$条边), 我们从Kruskal算法的思路开始思考, Kruskal算法通过不断的合并点集来建立最小生成树, 在合并的过程中,两个点集之间一定是没有任何边的,所有我们考虑在
        阅读全文
            
        
            
    北极通讯网络 Kruskal算法-扩展
    
            
            
        
摘要:北极通讯网络 题目 北极通讯网络 思路 	一开始想的时候,先删除最大的点,然后依次枚举,找到不满足题目条件,即卫星数目不够图连通,也就是连通块的数量大于卫星数,那么这个数的上一个边权,就是我们要找的最小的$d$, 其实这个是满足单调性的可以进行二分。 	我们可以将题目抽象为:找到最小的$d$, 
        阅读全文
            
        
            
    牛站 类Floyd-dp + 矩阵快速幂
    
            
            
        
摘要:题目 牛站 思路 	首先题目没有给总共有多少点, 但是告诉我们边$T \le 100$, 所以点的个数$N \le 200$, 因此如果我们考虑$bellman-ford$魔改算法,复杂度在$\Theta(NT) \le 1e8$, 所以我们先不考虑该算法, 考虑$类Floyd$算法复杂度在$O(
        阅读全文
            
        
            
    排序 Floyd-计算传递闭包
    
            
            
        
摘要:排序 Floyd-计算传递闭包 题目 排序 思路 	考虑$d[i][j]$只有两种边权$0/1$, $0$表示$i$和$j$的关系未知, $1$表示$i < j$ (即$d[i][j]$表示两点之间是否连同的问题) 	第一种情况是已经排序好,第二种是存在环的情况 (例如$i < j$ ,$j <
        阅读全文
            
        
            
    观光之旅 Floyd-求最小环
    
            
            
        
摘要:观光之旅 Floyd 求最小环 题目 观光之旅途 思路 	设路径$u_i \rightarrow u_w \rightarrow u_j \rightarrow \dots \rightarrow u_i$ 表示环$S$, 其中$w$表示路径中编号最大的点,且$i$和$j$ 是直接连接$w$点,那
        阅读全文
            
        
            
    01分数规划
    
            
            
        
摘要:01分数规划 题目 观光奶牛 思路 	在图论问题中,求(一堆的和 / 一堆的和)这样的问题我们称之为$01$分数规划,一般我们都采用二分来做。 	$\frac{\sum f_i}{\sum t_i}$	, 其中$f_i$表示点权,$t_i$表示边权。 $$ \frac{\sum f_i}{\su
        阅读全文
            
        
            
    最近公共祖先学习
    
            
            
        
摘要:最近公共祖先学习 定义 最近公共祖先简称 LCA(Lowest Common Ancestor)。两个节点的最近公共祖先,就是这两个点的公共祖先里面,离根最远的那个。 为了方便,我们记某点集 $S={v_1,v_2,\ldots,v_n}$ 的最近公共祖先为$LCA(v_1, v_2, \dots,
        阅读全文
            
        
            
    牛的旅行 Floyd
    
            
            
        
摘要:牛的旅行 题目 牛的旅行 思路 	先跑一边Floyd,再分别求每个连通块内的最短距离的最大值,$dmax[i]$ 表示$i$节点的最短距离的最大值$ans1 = max(ans1, dmax[i])$, 然后再对$d[x][y] = +\infin$的点求$ans2 = min(ans2, max
        阅读全文
            
        
            
    观光 拆点+Dijkstra(求次短路条数)
    
            
            
        
摘要:观光 题目 观光 思路 	最短路计数的拓展,和拯救大兵瑞恩一样,需要我们拆点,然后在对拆后的点进行Dijkstra, 将一个点的状态拆为最短距离和次短距离,同样可能存在环形依赖,我们可以跑Dijkstra来进行状态的递推,对比最短路计数,我们只需要在加一个次短路的状态,每次状态更新的时候,如果当前
        阅读全文
            
        
            
    关于最短路算法的拓扑序列
    
            
            
        
摘要:关于最短路算法的拓扑序列 最短路计数问题 题目 最短路计数 思路 我们考虑依赖方式(动态规划的思想): 1. 先求出**全局最小值**是多少 2. 再分别求出每个子集中**等于全局最小值**的元素个数 如果存在环形依赖关系的话,这样并不能求出最终的数量。 我们举例环形依赖问题: 	小王欠小张100
        阅读全文
            
        
            
    拯救大兵瑞恩 拆点+双端队列BFS
    
            
            
        
摘要:拯救大兵瑞恩 题目 拯救大兵瑞恩 思路 	我们可以先状压DP的思维思考,$dp[x][y][state]$ 表示了再$(x, y)$位置有钥匙状态为$state$的最短距离,考虑到$key$最多只有$10$种,$10 \times 10 \times 2^{10}$≈$1e6$, 足以开这么大的数
        阅读全文
            
        
            
    选择最佳路线
    
            
    
摘要:选择最佳路线 题目 选择最佳路线 思路 	比较简单的题,可以建立虚拟源点或者建立反向边,都是比较简单的思路,这里直接上各种思路的代码 Code Dijkstra建立反向边 #include <iostream> #include <cstring> #include <queue> using i
        阅读全文
            
        
 
 
         浙公网安备 33010602011771号
浙公网安备 33010602011771号