
DP & 记忆化搜索
文章平均质量分 57
AbEver
孤单是一个人的狂欢
展开
-
BZOJ 3437: 小P的牧场 (线性dp+斜率优化)
Description小P在MC里有n个牧场,自西向东呈一字形排列(自西向东用1…n编号),于是他就烦恼了:为了控制这n个牧场,他需要在某些牧场上面建立控制站,每个牧场上只能建立一个控制站,每个控制站控制的牧场是它所在的牧场一直到它西边第一个控制站的所有牧场(它西边第一个控制站所在的牧场不被控制)(如果它西边不存在控制站,那么它控制西边所有的牧场),每个牧场被控制都需要一定的花费(毕竟在控制站到牧场原创 2017-04-19 15:19:53 · 945 阅读 · 8 评论 -
SMOJ 1981 豆腐(数位DP+AC自动机)
Description 一篇由一个数位DP菜鸡写的数位DP博客。。。Solution这题看上去是一道很典型的数位DP。由于又涉及字符串的匹配,所以我们同时考虑AC自动机。我们按照数位DP的方法,算出[1, R]的答案,然后减去[1, L-1]的答案再相减。由于我太久没写过数位DP了,省赛前也没有好好学,所以对数位DP我仍然一头雾水。在膜了kekxy的博客后,我终于会做这题了。原创 2017-10-06 18:00:49 · 618 阅读 · 1 评论 -
bzoj 3209: 花神的数论题(数位DP+快速幂)
前生所有未能说过的话 在你心中无法撼动的他原创 2018-03-10 15:37:56 · 297 阅读 · 0 评论 -
BZOJ 4518: [Sdoi2016]征途(斜率优化DP)
诗酒趁年华。原创 2018-03-16 20:28:23 · 318 阅读 · 0 评论 -
bzoj 1408: [Noi2002]Robot(数论+DP)
此意自佳君不会,一杯当属水仙王。原创 2018-03-05 13:34:31 · 362 阅读 · 0 评论 -
POJ 3691 DNA repair(AC自动机+DP)
故君子必慎其独也原创 2018-03-06 17:11:49 · 379 阅读 · 0 评论 -
bzoj 1055: [HAOI2008]玩具取名(区间DP)
你看我 多么渺小一个我 因为你有梦可做原创 2018-03-13 20:44:43 · 278 阅读 · 0 评论 -
hdu 3076 ssworld VS DDD(概率DP)
每当心情郁闷的时候,用手托腮就好,手臂会因为帮上忙而开心的。原创 2018-03-13 22:09:14 · 373 阅读 · 0 评论 -
bzoj 1042: [HAOI2008]硬币购物(DP+容斥)
I don't want to change your mind原创 2018-03-30 11:05:50 · 276 阅读 · 0 评论 -
洛谷 P1357 花园(状压DP+矩阵快速幂)
题目传送门https://www.luogu.org/problemnew/show/P1357思路显然的状压DP, F[i][S]+=F[i−1][S>>1]+F[i−1][(S>>1)+(1<<(m−1))]F[i][S]+=F[i-1][S>>1]+F[i-1][(S>>1)+(1<<(m-1))]转移的条件是状态皆合法,这个可以预处理。直接递推肯定不行,我们开一个32*32的矩阵,同时有一原创 2018-04-07 15:02:54 · 537 阅读 · 0 评论 -
BZOJ 1419: Red is good(期望DP)
题目描述权限传送门题解比较水的期望DP,但也让我悟到了一点关于期望的东西。题目描述得不可描述,看起来逼格很高。但平均就是期望,关键是最优策略这点。根据我幼稚的理解,期望是均值没错,但期望之所以叫期望是因为它在预知未来,当前这个状态期望的得分就是作出决策后未来能得到分数的均值。所以或许这就是期望DP的状态要倒过来推的原因吧。考虑f[i][j]为剩下i张红牌j张黑牌的在最优策略下的期望。根据我脚推的式子原创 2018-03-21 17:27:57 · 343 阅读 · 0 评论 -
HDU 1693 Eat the Trees(多回路插头DP)
多回路插头DP 插头DP入门原创 2018-03-26 11:50:59 · 271 阅读 · 0 评论 -
BZOJ 5248: [2018多省省队联测]一双木棋(对抗搜索+记忆化)
题目传送门https://www.lydsy.com/JudgeOnline/problem.php?id=5248思路显然每个局面,落子无悔后都是一个从上往下的非严格递减阶梯。所以有效的状态数只有很少,每一行减下一行非负,方案数用隔板法随便一算发现是Cnm+nC_{m+n}^n这么多,不到2∗1052*10^5。所以用一个(m+1)(m+1)进制数压一波,丢进map里哈希掉。然后每一行只能放末尾,原创 2018-04-09 16:56:47 · 532 阅读 · 1 评论 -
BZOJ 2553: [BeiJing2011]禁忌(AC自动机+期望DP+矩阵快速幂)
传送吧https://www.lydsy.com/JudgeOnline/problem.php?id=2553思路建出trie图。记f[i][j]为长度为i到节点j的期望。直接转移不行。建出trie图的邻接矩阵,然后自乘len-1次转移。具体就是如果当前点的儿子是禁忌点,就连向根(由儿子连长度多了1),否则连向儿子。这样就避免了重叠。而且有个显然的结论就是能走到禁忌点就走,肯定能取到最大值。我们在原创 2018-04-04 10:48:27 · 343 阅读 · 0 评论 -
BZOJ 1556: 墓地秘密(SPFA+状压DP)
题面 权限门思路黄学长的题,比较简单的状压DP,考试时写了一个多小时,然后因为一个小错误只拿了40分。比较明显的是,只有机关墙四周的点是有用的, 有用的点只有4*K个。我们记DP[S][i][d]表示到过S集合,最后碰到的机关墙是i,停在墙的方向为d。然后通过枚举下一步去哪里、什么方向可以进行转移。提前预处理出4*K个点两两之间的“转向”最短路,这个通过bfs或SPFA可以搞。我个人偏向写SPFA原创 2018-04-17 14:19:13 · 415 阅读 · 0 评论 -
POJ 3071 Football(概率DP)
千山万水因你不过毫厘原创 2018-03-05 20:46:44 · 301 阅读 · 0 评论 -
bzoj 1237: [SCOI2008]配对(贪心+DP)
题目描述传送门题目大意:给两组数,求一种匹配方案,使得每一位的数差的绝对值之和最小,要求同样的数不能匹配,输出最小的和。每组数各不相同,无法匹配输出-1。(n<=10^5)题解这一看就是一道我想不出来的题。话说我的DP简直太菜了,智商简直连个小学生都不如。首先排序,如果没有限制对齐就行了,现在虽然有限制,但是其实交换距离最多不会超过2。如果超过2肯定可以换成2以内的交换使答案更优(自己举几个栗子)。原创 2018-03-15 22:30:01 · 305 阅读 · 0 评论 -
HDU 4003 Find Metal Mineral (树形DP+分组背包)
Problem DescriptionHumans have discovered a kind of new metal mineral on Mars which are distributed in point‐like with paths connecting each of them which formed a tree. Now Humans launches k robots on原创 2017-04-22 17:52:13 · 477 阅读 · 1 评论 -
HDU 1171 Big Event in HDU (多重背包+单调队列优化)
题目传送门:http://acm.hdu.edu.cn/showproblem.php?pid=1171题目大意有 n 种物品,每种物品有一个大小和数量。要求将所有的物品分成两部分,使两部分的总大小尽量接近。题目分析多重背包果题。 令 sum 为所有物品的大小总和。那么就是用给定的物品做多重背包,背包容量为sum/2,得到的结果是较小的一部分的大小。然后多重背包问题可以使用单调队列优化,O(nm)原创 2017-04-22 22:15:07 · 487 阅读 · 2 评论 -
POJ 3252 Round Numbers (数位dp)
DescriptionThe cows, as you know, have no fingers or thumbs and thus are unable to play Scissors, Paper, Stone’ (also known as ‘Rock, Paper, Scissors’, ‘Ro, Sham, Bo’, and a host of other names) in ord原创 2017-04-24 19:16:02 · 410 阅读 · 0 评论 -
BZOJ 4813: [Cqoi2017]小Q的棋盘 (树形dp)
题目传送门Solution树形背包dp大水题,是POJ某道题的弱化版。。。不想说了,据说贪心也能过此题。。一开始50分,dp数组初始化炸了,表示无语。。Code#include <iostream>#include <cstdio>#include <cstring>#include <cstdlib>#include <algorithm>#include <cmath>#define原创 2017-04-27 16:21:15 · 928 阅读 · 2 评论 -
BZOJ 4318: OSU! (概率dp)
Descriptionosu 是一款群众喜闻乐见的休闲软件。 我们可以把osu的规则简化与改编成以下的样子: 一共有n次操作,每次操作只有成功与失败之分,成功对应1,失败对应0,n次操作对应为1个长度为n的01串。在这个串中连续的 X个1可以贡献X^3 的分数,这x个1不能被其他连续的1所包含(也就是极长的一串1,具体见样例解释) 现在给出n,以及每个操作的成功率,请你输出期望分数,输出原创 2017-04-27 11:40:34 · 482 阅读 · 0 评论 -
洛谷 P1070 道路游戏(动态规划)
题目描述小新正在玩一个简单的电脑游戏。游戏中有一条环形马路,马路上有 n 个机器人工厂,两个相邻机器人工厂之间由一小段马路连接。小新以某个机器人工厂为起点,按顺时针顺序依次将这 n 个机器人工厂编号为1~n,因为马路是环形的,所以第 n 个机器人工厂和第 1 个机器人工厂是由一段马路连接在一起的。小新将连接机器人工厂的这 n 段马路也编号为 1~n,并规定第 i 段马路连接第 i 个机器人工厂和第原创 2017-07-07 15:24:36 · 656 阅读 · 0 评论 -
BZOJ 2152: 聪聪可可(点分治/树形DP)
题目在这里题解这题有两种作法,一开始我想的是点分治,类似于POJ1741那题(点这里),我们按同样的方法搜索depdep并记录,不过这次记录的是dep%3=0,1,2dep\%3=0,1,2的数量,记作t[i]t[i]。那么根据乘法原理,ans1=t[1]∗t[2]∗2+t[0]∗t[0]ans_1=t[1]*t[2]*2+t[0]*t[0],然后再算出儿子的ans2ans_2,并减去即可。求出满足原创 2017-09-11 16:26:42 · 637 阅读 · 1 评论 -
BZOJ 2958: 序列染色 && BZOJ 3193: [JLOI2013]地形生成 —— 肆虐的DP
BZOJ 2958: 序列染色 && BZOJ 3193: [JLOI2013]地形生成 —— 肆虐的DP原创 2017-10-21 10:53:57 · 522 阅读 · 0 评论 -
BZOJ2719 - [Violet 4]银河之星 (记忆化搜索+hash)
DescriptionInputOutputSolution一看到这题的我是懵逼的,好像有好多状态,妈妈怎么办?然而仔细读题目,转动我们的脑子可以发现,由于每个棋子可以向各个方向移3格,且只会改变自身的位置,整个网格就被划成了9个区域: 0 1 2 3 4 5 6 7 8其中每个区域代表的是处于某个位置的格子能走遍的所有格子的集合。举个栗子:第一行第一列的格子就跟第一行第四列的格子原创 2017-09-10 20:55:15 · 818 阅读 · 1 评论 -
hdu 4336 Card Collector(期望+状压DP)
传送门http://acm.hdu.edu.cn/showproblem.php?pid=4336题解懒得写题目大意了。这就是道一眼题。由于每个东西概率不同,所以状压起来。根据期望逆推的套路,设f[s]表示集齐s后还需要买的次数的期望。则f[2^n-1] = 0,明显有如下方程:f[s] = ∑p[i] * f[s|2^(i-1)] + (1.0 - temp) * f[s...原创 2018-03-07 20:52:41 · 296 阅读 · 0 评论 -
BZOJ 2111: [ZJOI2010]Perm 排列计数(DP+Lucas定理)
题面http://www.lydsy.com/JudgeOnline/problem.php?id=2111题解题目大意:求n个节点的点权为1-n的排列的完全二叉树中有多少个小根堆。很明显,将题目中的排列当成编号1-n的完全二叉树,然后在上面放1-n的点权,要求满足节点x的权值小于节点x<<1和x<<1|1。树形DP,令f[x]为以x为根的方案,...原创 2018-02-22 01:27:10 · 336 阅读 · 0 评论 -
BZOJ 1076: [SCOI2008]奖励关(期望+状压DP)
传送门http://www.lydsy.com/JudgeOnline/problem.php?id=1076题解不能从前往后推,求期望的正确姿势应该是从后往前。每个物品有先决限制,我们将已获得的物品状压起来。记f[i][s]为第i关开始前拥有集合s的得分期望。枚举关卡数、集合和第i关的物品。若满足先决条件,则f[i][s] += max(f[i+1][s], f[i+1][s|(1<<(j-1))原创 2018-03-15 14:46:25 · 288 阅读 · 0 评论 -
BZOJ 3992: [SDOI2015]序列统计(NTT+快速幂+DP)
快速数论变换NTT 求原根 LL大法好原创 2018-02-23 01:49:12 · 404 阅读 · 0 评论 -
BZOJ 2298: [HAOI2011]problem a(背包DP)
Description一次考试共有n个人参加,第i个人说:“有ai个人分数比我高,bi个人分数比我低。”问最少有几个人没有说真话(可能有相同的分数)Input第一行一个整数n,接下来n行每行两个整数,第i+1行的两个整数分别代表ai、biOutput一个整数,表示最少有几个人说谎Sample Input 3 2 0 0 2 2 2Sample Output 1HINT1原创 2018-03-01 22:06:42 · 476 阅读 · 0 评论 -
BZOJ 3143: [Hnoi2013]游走(高斯消元+概率DP)
题面https://www.lydsy.com/JudgeOnline/problem.php?id=3143思路期望的一种算法是先算概率,最后乘值, 这里我们先求期望次数,再编号。显然的贪心就是给去的期望次数多的边编较小的编号。现在问题在于求经过每条边的期望次数。我们求出点的,自然可以通过边两边的点求出边的期望。由于点数很小,可以用高斯消元来求。随机任意游走,可以看做是稳定的,各个点的期望满足一个原创 2018-04-23 08:44:30 · 447 阅读 · 0 评论