随笔分类 - 动态规划-dp
摘要:题目链接 "BZOJ3235" 题解 求出每个点为顶点,分别求出左上,左下,右上,右下的矩形的个数 并预处理出表示点到四个角的矩形内合法矩形个数 就可以容斥计数啦 枚举顶点,乘上另一侧矩形个数,如图: 但是会算重,对于这样的情况 减去即
阅读全文
摘要:题目链接 "BZOJ3193" 题解 注意是小于 第一问,显然按高度降序排序,逐个插入 如果高度各不相同,那么之前插入的都比当前插入的大,可插入的位置个数就确定了 由于存在高度相同的情况,将key作为第二关键字升序排序 这样后面插入的就一定能插入前面插入的之后,统计一下之前插入了$c
阅读全文
摘要:题目链接 "BZOJ3688" 题解 将点排序 设表示以第点结尾,有段,最后一段上升或者下降的方案数 以上升为例 $$f[i][j][0] = \sum\limits_{k = 1}^{i 1}\sum\limits_{y_k include include
阅读全文
摘要:题目链接 "uoj132" 题解 真是一道大码题,,,肝了一个上午 老司机的部分是一个,观察点是按分层的,而且按每层点的上限来看可以使用的,其中是每层的点数 我们设表示从点进入该层,直到走完为止所经过的最多点的数量,我们把原点也看做一棵树,
阅读全文
摘要:题目链接 "loj2538" 题解 比较明显的是,由于强化牌倍数大于,肯定是能用强化牌尽量用强化牌 如果强化牌大于等于,就留一个位给攻击牌 所以我们将两种牌分别排序,企图计算表示张强化牌选出最强的张的所有方案的倍数和 表示从张攻击牌选出最
阅读全文
摘要:题目链接 "BZOJ1264" 题解 平凡的是的 显然我们要根据题目的性质用一些不平凡的求法 这就很巧妙了,, 我们考虑序列的每个位置可能匹配位置的哪些位置 而序列中匹配的位置一定是单调递增的 那么我们就把的每个位置所能匹配的位置找出
阅读全文
摘要:题目链接 "洛谷P4608" 题解 建个序列自动机后 第一问暴搜 第二问dp + 高精 设为两个序列自动机分别走到和节点的方案数,答案就是 由于空间卡的很紧,高精不仅要压位,还要动态开内存 由于有些状态是没用的,记忆化搜索以减少内存损失 C++ inc
阅读全文
摘要:题目链接 "BZOJ3782" 题解 我们把终点也加入障碍点中,将点排序,令表示从出发,不经过其它障碍,直接到达的方案数 首先我们有个大致的方案数 但是中途可能会经过一些其它障碍点,那么就减去 所以 $
阅读全文
摘要:题目链接 "BZOJ2553" 题解 话说在前,此题卡精度,最好开long double 先建自动机 求期望,逆着求,设为长度为的串,当前匹配AC自动机节点,之后能产生伤害的期望值 枚举转移,如果转移到一个单词节点,因为产生伤害的单词间不能相连,就直接跳回根节点
阅读全文
摘要:题目链接 "BZOJ3427" 题解 容易发现最终序列一定是组成的 因为如果有一个位置不是,那么这个位置一定大于,那么上一个位置一定为,所以该位置一定加到过。由于已经满足条件,而经分析得大于会使下一个位置的决策不优反劣,所以一定不会大于 那
阅读全文
摘要:题目链接 "洛谷P4591" 题解 设表示前个串匹配到位置的方案数,匹配一下第个串进行转移即可 本来写了,发现没过,又写了一个,依旧,无奈去翻题解,竟然要取模??!! 题面怎么不讲啊,, C++ include include inc
阅读全文
摘要:题目链接 "BZOJ4032" 题解 首先膜 空手切神题 一问,二问枚举 三问树,四问 南二巨佬神 空手吊打自动机 咳。说正解 要处理子串,直接搬上后缀自动机 要处理子序列,直接搬上序列自动机
阅读全文
摘要:题目链接 "BZOJ3594" 题解 dp难题总是想不出来,, 首先要观察到一个很重要的性质,就是每次拔高一定是拔一段后缀 因为如果单独只拔前段的话,后面与前面的高度差距大了,不优反劣 然后很显然可以设出表示前个玉米,第棵必须选,且共拔高了次的最大值 由之前的性质
阅读全文
摘要:题目链接 "BZOJ3622" 题解 既已开题 ~~那就已经没有什么好害怕的了~~ 由题目中奇怪的条件我们可以特判掉为奇数时答案为 否则我们要求的就是糖果大于药片恰好有个的方案数,我们记为 思路1 直接求恰好不好求,想到二项式反演: 如果有
阅读全文
摘要:题目链接 "BZOJ1233" 题解 有一个贪心策略:同样的干草集合,底长小的一定不比底长大的矮 设表示形成的干草堆的最小底长,同时用记录此时的高度 那么 $$f[i] = min\{f[j]\} \quad [sum[j 1] sum[i 1] \ge f[j
阅读全文
摘要:题目链接 "BZOJ1487" 题解 就是一个简单的仙人掌最大权独立集 还是不会圆方树 老老实实地树形Dp + 环处理 C++ include include include include include define LL long long int define Redge(u) for (i
阅读全文
摘要:题目链接 "loj300" 题解 orz "litble" 膜完题解后,突然有一个简单的想法: 考虑到是质数,考虑Lucas定理: $${n \choose m} = \prod_{i = 1} {\lfloor \frac{n}{2^{i 1}} \rfloor \mod 2^i \choo
阅读全文
摘要:题目 小 CC 非常擅长背包问题,他有一个奇怪的背包,这个背包有一个参数 PP ,当他 向这个背包内放入若干个物品后,背包的重量是物品总体积对 PP 取模后的结果. 现在小 CC 有 nn 种体积不同的物品,第 ii 种占用体积为 V_iV i ,每种物品都有无限个. 他会进行 qq 次询问,每
阅读全文