Loading

摘要: 题目大意 给定一个矩阵,每次选择一个比它所有“邻居”都大的项,不断减一直到它不满足以上条件,求修改完后的矩阵。 “邻居”的定义是左右相邻或上下相邻,不包括对角线的情况。 解题思路 我们首先要明白一点,别看题目中讲要找坐标小的先修改,实际上修改顺序是不重要的。 而要明白这一点我们又要明白另一点,那就是 阅读全文
posted @ 2025-12-12 23:09 Seqfrel 阅读(21) 评论(0) 推荐(0)
摘要: 题目大意 有 \(n\) 天 \(m\) 个任务,每个任务需要一台机器用一天时间完成,每个任务最多推迟 \(d\) 天完成。给定 \(m\) 个任务提交的时间,求最少需要几台机器才能满足所有任务。 解题思路 解决此题,需要想清楚两个性质: 性质一:所需机器数量是单调的 这个性质不难理解,如果 \(x 阅读全文
posted @ 2025-12-12 23:08 Seqfrel 阅读(20) 评论(0) 推荐(0)
摘要: 一、强连通分量 强连通:有向图 G 强连通是指 G 中任意两个节点相通。 强连通分量(Strongly Connected Componets, SCC),是指一个有向图中的极大强连通子图。 用处:可以把 SCC 看作一个点,构造新图解决问题。 二、Tarjan Tarjan 是一种用来求强连通分量 阅读全文
posted @ 2025-12-12 23:07 Seqfrel 阅读(67) 评论(0) 推荐(0)
摘要: 该算法可以离线求最近公共祖先,大幅节省时间复杂度(\(O(n \log n)\)->\(O(n+m)\))。 缺点是如果题目要求强制在线那么就用不了了。 具体实现是这样的:把原树用双向边存起来,然后把每一对要求 LCA 的两个点在一个新图上存一个双向边(称为查询边)。 对原图进行一次 DFS 遍历, 阅读全文
posted @ 2025-12-12 23:05 Seqfrel 阅读(42) 评论(0) 推荐(0)
摘要: 1. 海拔预处理 因为小 A 和小 B 开车涉及选择最短距离的问题,所以我们需要把他们两个开到每个城市要选择的最短距离预处理出来。 朴素做法用 \(O(n^2)\) 打擂台求出最近和第二近的城市,但显然过不了。我们可以这么做: 读入时存储每个城市的高度和编号。 读入完成后按照高度排序。此时与排序后的 阅读全文
posted @ 2025-12-12 23:03 Seqfrel 阅读(59) 评论(0) 推荐(0)
摘要: 该算法可以两次 DFS 求出以每个节点为根所得树的深度。 算法实现 朴素做法:枚举每个节点作根的情况进行 DFS,\(O(n^2)\)。 要想优化,就必须避免改变树的结构。我们发现,子树 \(u\) 的节点在以 \(u\) 为根的大树中到根 \(u\) 的距离都减少了一,其他节点因为要经过 \(u\ 阅读全文
posted @ 2025-12-12 23:02 Seqfrel 阅读(43) 评论(0) 推荐(1)
摘要: Luogu P1896 [SCOI2005] 互不侵犯 因为一行的状态只有放与不放国王,所以可以用 \(0\) 和 \(1\) 表示,然后就可以把一行的状态压缩成一个 \(9\) 位二进制数表示,状态个数为 \(2^9\)。随后定义状态 \(f(i,j,s)\) 表示前 \(i\) 行放 \(j\) 阅读全文
posted @ 2025-12-12 23:00 Seqfrel 阅读(56) 评论(0) 推荐(1)
摘要: 思路分析 1. 判断负环 这个部分相对来说比较简单,可以用经典的 SPFA 算法判断负环,时间复杂度 \(O(km)\)。这里给出一种效率更高的负环判断方法,使用 DFS 判断负环。遍历这个图,进行松弛技术,如果一个节点被访问第二次,那么就说明存在负环,直接退出。时间复杂度 \(O(n)\)。 vo 阅读全文
posted @ 2025-12-12 22:59 Seqfrel 阅读(60) 评论(0) 推荐(0)
摘要: 一、最大公约数,欧几里得算法,GCD 这一部分非常简单,普及-难度的算法。 首先是一段初学者都会的递归求 GCD 的辗转相除法: int gcd(int a,int b){ if(b==0) return a; else return gcd(b,a%b); } 这也被称为欧几里得算法。 这里重点探 阅读全文
posted @ 2025-12-12 22:53 Seqfrel 阅读(78) 评论(0) 推荐(0)
摘要: 二分图 二分图:可以把所有点分为两个点集,相同点集里的点之间没有边的无向图。 当且仅当一个无向图中有奇环存在时,这个图不是二分图。 一、二分图判定 - 染色法 我们可以把图中的点染成两种颜色,白色是一个点集,黑色是另一个点集。 染色的规则:因为相同点集里的点之间没有边,所以每个节点的颜色必须与父节点 阅读全文
posted @ 2025-12-12 22:50 Seqfrel 阅读(68) 评论(0) 推荐(0)