随笔分类 - 动态规划
摘要:首先,每个二叉树对应着唯一的中序遍历,并且每个二叉树的概率是相同的 这十分的有用 考虑$dp$求解 令$f_i$表示$i$个节点的子树,根的深度为$1$时,所有点的期望深度之和(乘$i!$)的值 令$g_i$表示$i$个节点的子树,期望两两路径之和(乘$i!$)的值 那么$f_i = i i! +
阅读全文
摘要:题目大意: emmmmm 题解: QAQ 大家都会写的题,不是吗?
阅读全文
摘要:博弈部分是自己想出来的,$dp$的部分最后出了点差错QAQ 从简单的情况入手 比如$k = 2$ 如果有这样的局面:$\circ \bullet $,那么先手必输,因为不论先手怎样移动,对手都可以紧逼,一直到墙角 如果有这样的局面:$\circ \;\;\; \bullet$,那么后手必输,因为先手
阅读全文
摘要:题目大意: 给定$n$个正整数,$a, b$两个人轮流取,$a$先手 每次可以取任意多的数,直到取完,每次的得分为取的数中的最小值 $a, b$都会使自己的得分减去对手的得分更大,询问最后$a$的得分减去$b$的得分的大小 先考虑排序 排完序之后,先手一定取连续的一段 如果不取完,那么后手有更多的选
阅读全文
摘要:给定$n$个点,$m$条边的带权无向图 选出一些边,使得$4$对点之间可达,询问权值最小为多少 $n \leqslant 30, m \leqslant 1000$ 首先看数据范围,$4$对点,也就是$8$个点,很小 上斯坦纳树(局部最小生成树) 然而好像题目并不是斯坦纳树,可能是一些树拼到一起 那
阅读全文
摘要:首先有朴素的$O(n^2)$想法 首先枚举断边,之后对于断边之后的两棵子树求出直径 考虑优化这个朴素的想法 考虑换根$dp$ 具体而言,首先求出$f[i], fs[i]$表示$i$号点向下的最长链以及$i$号子树内部最长的直径 并且在求出$g[i]$表示$fa[i]$在$i$号节点子树外的最长链 $
阅读全文
摘要:写什么递归....非递归多好写 令$f[i][j]$表示前$i$位的和在模$d$意义下为$j$的方案数,然后转移即可 复杂度$O(10000 * 100 * 10)$ 注意非递归建议高位摆第$n$位...
阅读全文
摘要:为什么前面的人都跑得那么快啊? QAQ T1:区间方差 题目大意:询问区间方差,支持单点修改 首先把方差的式子展开,得到 $$d = \frac{a_1 + ... a_n}{n} - \frac{a_1^2 + .. + a_n^2 }{n^2}$$ 那么,只需维护$\sum a_i$和$\sum
阅读全文
摘要:今天考场上突现决策单调性 原本对这个算法表示摒弃的本弱突然被打击了 于是来学习学习... 原理 我们只考虑$1D\;|\;1D$的动态规划... 同时,我们讨论这么一类$dp$:$f[i] = min(f[j] + w(j, i))(1 \leqslant j \leqslant i - 1)$ (
阅读全文
摘要:题目大意: 你有$k$个数,分为$26$种 对于每个数,你可以选择选进$A$集合或者$B$集合或者不选 要求$A$集合中必须有$n$个数,$B$集合中必须有$m$个数 记第$i$种数在$A$集合中的个数为$a_i$,$B$中个数为$b_i$ 试最小代价$\sum a_i * b_i$ $k \leq
阅读全文
摘要:显然可以树形$dp$ 令$f[i]$表示$i$号节点的期望时间戳 不妨设$fa$有$k$个子节点,对于$i$的子节点$u$,它是第$j(1 \leqslant j \leqslant k)$个被访问的概率是相同的,为$\frac{1}{k}$ 当它作为第$j$个子节点被访问时,需要从剩下的$k -
阅读全文
摘要:分两种情况讨论 一种为奇数长为$L$的路径,在经过变化后,我们需要走$\frac{L}{2} + 1$步 一种为偶数长为$L$的路径,在变化后,我们需要走$\frac{L}{2}$步 那么,我们只需要讨论出所有奇数长的路径的个数,再加上原本的路径和,除以2就是答案了 对于奇数长的路径的个数,一定是从
阅读全文
摘要:预处理出每一行去掉$k$个1能获得的最小代价 之后做一次分组背包$dp$即可 预处理可以选择暴力枚举区间... 复杂度$O(n^3)$
阅读全文
摘要:设$f(i, j)$表示以$i$结尾的,长为$j$的上升子序列的数量 转移时用树状数组维护即可 复杂度为$O(kn \log n)$ 注:特判0
阅读全文
摘要:简单$dp$,考虑从大到小插入 设个状态$f[i][j][0 / 1]$表示$i$和$i - 1$是否相邻即可 转移看代码就能看懂吧... 复杂度$O(n^2)$ 打表可$O(1)$
阅读全文
摘要:闻所未闻的$dp$神题(我不会的题) 令$f[S][i]$表示子集状态为$S$,且$S$中最大联通块恰好为$i$的方案数 考虑转移,我们枚举$S$中最小的元素$v$来转移,这样就能不重 $f[S][i] = \sum\limits_{T \in S \;and\;v \in T} f[T][...]
阅读全文
摘要:直接背包不可做 我们只需要知道每个数位上有多少个$1$,那么我们就能构造出解 因此,我们对每一位讨论, 可以拆出$n + \frac{n}{2} + \frac{n}{4} + ... = 2n$个物品,然后去做背包 加上足够的剪枝就可以过了... 复杂度$O(Tn^2)$
阅读全文
摘要:出题人语文真好... 各不相同的标号和高度 = 各不相同的标号 + 单独的高度... 第一问比较简单,考虑从大到小插入,在相同情况下,按关键值从小到大插入 这样子,关键大的元素一定会影响到关键小的元素,不会漏统计 插入$i$号元素时,不妨设比它大的数为$S$个,限制为$lim$,和它相同的且已经插入
阅读全文
摘要:水题一道 $f[i][j][S]$表示$2 * i$的矩形,有$j$个联通块,某尾状态为$S$ 然后转移就行了...
阅读全文

浙公网安备 33010602011771号