摘要: 本博客主要收集一些常用的板子的写法和一些做题技巧及方法(不定期更新) LIS https://www.cnblogs.com/jd1412/p/14084132.html tarjin https://www.luogu.com.cn/paste/teipaej1 最短路径树 https://www 阅读全文
posted @ 2020-12-01 11:25 雾隐 阅读(224) 评论(0) 推荐(0) 编辑
摘要: 常系数齐次线性递推 定义 对于一个递推式,如果 \(a_n = \displaystyle \sum_{i=1}^{k}{a_{n-i}*f_i}\) ,那么称这个 \(a\) 序列满足 \(n\) 阶常系数齐次线性递推关系 矩阵优化 如果我们已知一个满足 \(k\) 阶常系数齐次线性递推关系的序列 阅读全文
posted @ 2021-09-02 21:05 雾隐 阅读(297) 评论(0) 推荐(1) 编辑
摘要: P4383 [八省联考2018]林克卡特树 分析 对于题目要求的删除 \(k\) 条边,再连接 \(k\) 条边,分析一下,我们发现,实际上再连接的 \(k\) 条边,由于它们的权值是 \(0\) ,连接与否效果都是一样,那么,我们就只考虑如何删除那 \(k\) 条边即可,于是,这个问题我们就可以转 阅读全文
posted @ 2021-03-31 19:00 雾隐 阅读(93) 评论(0) 推荐(0) 编辑
摘要: 理论:https://www.luogu.com.cn/blog/306957/qbxt-shuo-xue-day7-post FFT 实现 蝴蝶操作 由 \[ A(\omega_n^k) = A_1(w_{\frac{n}{2}}^k) + \omega_n^k A_2(w_{\frac{n}{2 阅读全文
posted @ 2021-03-16 20:10 雾隐 阅读(80) 评论(0) 推荐(0) 编辑
摘要: 点分治 淀粉质 考虑一个问题:给定一棵树,统计树的路径中长度小于等于 \(k\) 的路径条数 显然,我们需要选定一个点为根,将其转化为有根树进行处理,设为 \(x\) 对于节点 \(x\) 来说,它子树中的简单路径包括两种情况: 经过节点 \(x\) ,由两条或一条路径拼接而成 不经过节点 \(x\ 阅读全文
posted @ 2021-03-16 20:09 雾隐 阅读(55) 评论(0) 推荐(0) 编辑
摘要: P3622 [APIO2007]动物园 分析 本题对于 \(n\) 和 \(c\) 的范围都比较大,不好直接处理,但是每个人可以看到的围栏数量只有 \(5\) 我们可以从这里入手考虑 设 \(dp[i][s]\) 表示对于 \(i,i+1,i+2,i+3,i+4\) 这 \(5\) 个围栏的动物情况 阅读全文
posted @ 2021-02-20 20:22 雾隐 阅读(48) 评论(0) 推荐(0) 编辑
摘要: 题意 求一个序列的两个子段,使得两段子段的和最大 即找两段 (s1,t1) 和 (s2,t2),使得 \(\displaystyle \sum_{i=s1}^{t1}{a_i} + \displaystyle \sum_{i=s2}^{t2}{a_i}\) 最大 做法 分别从序列起点和末端进行 dp 阅读全文
posted @ 2021-02-20 09:16 雾隐 阅读(50) 评论(0) 推荐(0) 编辑
摘要: 传送门 分析 本题的 \(n\) 较小,用 Floyd 以 \(O(n^3)\) 的复杂度即可通过 我们首先来看 Floyd 的代码: for(int k=1;k<=n;k++) { for(int i=1;i<=n;i++) { for(int j=1;j<=n;j++) { dp[i][j]=s 阅读全文
posted @ 2021-01-31 15:14 雾隐 阅读(111) 评论(0) 推荐(0) 编辑
摘要: Definition 指数:设 \(m>1\) 为整数, \(a\) 为与 \(m\) 互素的数,则使得 \(a^e \equiv 1 (\bmod m)\) 成立的是最小正整数 \(e\) 叫做 \(a\) 对模 \(m\) 的指数,记作 \(ord_{m}{a}\) 原根:若 \(a\) 对 模 阅读全文
posted @ 2021-01-15 09:50 雾隐 阅读(269) 评论(0) 推荐(0) 编辑
摘要: link \(O(nmlogn)\) 首先,我们处理本题,对于正向思维,即将所有的满足题意的三角形直接数出并不容易实现,我们可以考虑从反面入手,只要从所有的情况中减去不合法的情况即可 对于一条横向的线,不合法的数量为 \(C(m+1,3)\) ,同理,对于一条竖直的线,不合法的数量即为 \(C(n+ 阅读全文
posted @ 2021-01-14 16:25 雾隐 阅读(141) 评论(0) 推荐(0) 编辑
摘要: P4370 分析 首先,我们需要找 \(k\) 个最大的组合数,我们发现对于任一组合数,一定有 \(C_n^m\) > \(C_{n-1}^m\) ,那么我们可以先将 \(C_n^i , 0\leq i \leq n\) 全部都加入一个优先队列里,之后每次都将队首取出,然后将它对应的 \(C_{n- 阅读全文
posted @ 2021-01-10 08:22 雾隐 阅读(113) 评论(0) 推荐(0) 编辑