随笔分类 - dp
摘要:常系数齐次线性递推 定义 对于一个递推式,如果 \(a_n = \displaystyle \sum_{i=1}^{k}{a_{n-i}*f_i}\) ,那么称这个 \(a\) 序列满足 \(n\) 阶常系数齐次线性递推关系 矩阵优化 如果我们已知一个满足 \(k\) 阶常系数齐次线性递推关系的序列
阅读全文
摘要:P4383 [八省联考2018]林克卡特树 分析 对于题目要求的删除 \(k\) 条边,再连接 \(k\) 条边,分析一下,我们发现,实际上再连接的 \(k\) 条边,由于它们的权值是 \(0\) ,连接与否效果都是一样,那么,我们就只考虑如何删除那 \(k\) 条边即可,于是,这个问题我们就可以转
阅读全文
摘要:P3622 [APIO2007]动物园 分析 本题对于 \(n\) 和 \(c\) 的范围都比较大,不好直接处理,但是每个人可以看到的围栏数量只有 \(5\) 我们可以从这里入手考虑 设 \(dp[i][s]\) 表示对于 \(i,i+1,i+2,i+3,i+4\) 这 \(5\) 个围栏的动物情况
阅读全文
摘要:最长公共上升子序列 状态:设 \(f[i][j]\) 为以 \(b[j]\) 为结尾的最长公共上升子序列的长度 转移:显然,当 \(a[i] \neq b[j]\) 时, \(f[i][j]=f[i-1][j]\) ,否则,就查找 \(f[i-1][k]\) 中 \(a[i-1]=b[k]\) 的最
阅读全文
摘要:题意 求一个序列的两个子段,使得两段子段的和最大 即找两段 (s1,t1) 和 (s2,t2),使得 \(\displaystyle \sum_{i=s1}^{t1}{a_i} + \displaystyle \sum_{i=s2}^{t2}{a_i}\) 最大 做法 分别从序列起点和末端进行 dp
阅读全文
摘要:最长上升子序列 1. \(O(n^2)\) 考虑以 i 为结尾的最长上升子序列的长度即可 #include<iostream> using namespace std; int i,j,n,a[100],b[100],max; int main() { cin>>n; for(i=0;i<n;i++
阅读全文
摘要:P1850 首先,我们从一节课的教室到另一节课的教室的距离显然需要尽可能小,所以可以预先跑一遍 Floyed ,把距离处理出来 其次,对于这道 DP ,我们设 \(f[i][j][0/1]\) 为当前已经处理到第 \(i\) 节课,算上本堂课一共用了 \(j\) 次换教室的机会所产生的最小期望和,
阅读全文
摘要:1286:怪盗基德的滑翔翼 时间限制: 1000 ms 内存限制: 65536 KB提交数: 4558 通过数: 2193 【题目描述】 怪盗基德是一个充满传奇色彩的怪盗,专门以珠宝为目标的超级盗窃犯。而他最为突出的地方,就是他每次都能逃脱中村警部的重重围堵,而这也很大程度上是多亏了他随身携带的便于
阅读全文

浙公网安备 33010602011771号