随笔分类 - 算法
主要记录一些自己在学习算法的过程中遇到的优质例题。
摘要:Abstract 记录一些自己写的算法模板,防止重复造轮子。 图论 邻接表 Code namespace graph { int n; const int maxn = 10000000; int head[maxn]; int cnt; struct Edge { int next, to, va
阅读全文
摘要:Abstract 介绍一下扫描线的经典用法。 命名空间还挺好用的。 A-扫描线(模板) Idea 想象现在有一根线正在从左向右扫描,那么,我们就可以通过纵坐标上区间的覆盖情况去确定扫过的矩形覆盖的面积,区间覆盖情况可以用线段树去维护。实现细节见代码注释。 Code #include <bits/st
阅读全文
摘要:Abstract 本文主要介绍各种序列子段和问题。 P1 最大子段和 传送门 Introduction 首先来看一道经典例题,求一段序列的最大子段和 Idea 考虑动态规划,令 dp[i] 表示在取第 i 个数的情况下,前 i 个数所能得到的最大子段和,那么显然有 dp[i] = max( dp[i
阅读全文