随笔分类 -  动态规划DP

摘要:ZJOI2010数字计数 "题目传送" sol: 仍然可以按照记忆化实现的思路来解决此题。 $pos,lim,lead$的含义不再申明,不了解可以 "看这里" (含义是一样的),也可以阅读那里面的那篇链接博文。 此题中只需多记录一个变量$cnt$,表示计算的数$now$,在$pos$位中已经出现了$ 阅读全文
posted @ 2019-06-13 17:09 薄荷凉了夏 阅读(199) 评论(0) 推荐(0)
摘要:SCOI2009windy数 "题目传送" sol: 一道数位DP的基础题。然而还是几次没想清。 这种求区间l,r的一般都用记忆化搜索的方法实现。 如果不熟悉记搜实现的数位DP建议参考 "Here" $getans(1,r) getans(1,l 1)$即为答案。 考虑需要记录的变量: $pos$表 阅读全文
posted @ 2019-06-13 16:55 薄荷凉了夏 阅读(160) 评论(0) 推荐(0)
摘要:0x5C~0x5D [TOC] 0x5C 计数类DP a.[√] Gerald and Giant Chess "题目传送" sol: 发现格子数很大,但是黑色格子数很小,所以考虑往黑色格子上靠。 所以考虑到容斥一下,即 不经过黑格子的路径条数=路径总条数 至少经过一个黑格子的路径条数。 从点$(1 阅读全文
posted @ 2019-06-13 11:17 薄荷凉了夏 阅读(658) 评论(0) 推荐(0)
摘要:0x5A~0x5B [TOC] 0x5A 斜率优化 之前已经写过一些不再写一遍了。 "Here" 0x5B 四边形不等式 a.[√]诗人小G "题目传送" sol: 首先直接设出状态:$f[i]$表示前i首诗排版后的最小答案。 那么转移为: $$ f[i]=min_{0≤j include incl 阅读全文
posted @ 2019-06-11 21:51 薄荷凉了夏 阅读(689) 评论(0) 推荐(1)
摘要:四边形不等式与决策单调 [TOC] 四边形不等式 定义 存在二元函数$w(x,y)$ ,其定义域为$I$, 若对于任意$a,b,c,d\in I且a≤b≤c≤d$,$w(a,d)+w(b,c)≥w(a,c)+w(b,d)$恒成立 则称$w$满足四边形不等式。 判定定理 若对于任意$a,b\in I且 阅读全文
posted @ 2019-06-11 21:48 薄荷凉了夏 阅读(230) 评论(0) 推荐(1)
摘要:0x57~0x59 [TOC] 0x57 倍增优化DP a.[√] 开车旅行 "题目传送" 吐槽: 这道题是真的E心。。题面看了不知道多少遍吧,开始一直没看懂,然后怒写4k代码,几经绝望,,,乱搞过了 sol: 第一个首先要预处理出每一个城市的最近的城市和次近的城市,分别记为M1[],M2[]。 这 阅读全文
posted @ 2019-06-10 10:56 薄荷凉了夏 阅读(789) 评论(0) 推荐(0)
摘要:0x55~0x66 [TOC] 0x56 状压DP a.[√] Mondriaan's Dream "题目传送" sol: 注意到数据范围十分的小,考虑状态压缩。 依次考虑每一行,可以注意到这一行的方块分成两种: ① 横着填的方块中一块。 ② 竖着填的方块中一块。 分析一下当前行对下一行的影响:当且 阅读全文
posted @ 2019-06-04 20:03 薄荷凉了夏 阅读(555) 评论(0) 推荐(0)
摘要:0x52~0x54 [TOC] 0x52 背包问题 a.[√] coins "题目传送" sol: 这是一道多重背包模板题,但是常规的二进制优化过不了。单调队列优化是可以的。 这里需要一个更加简单的方法。 注意到本题只要关心是否存在,所以可以考虑设$f[x]$表示x能否被表示出来。 那么对于硬币i, 阅读全文
posted @ 2019-06-01 11:59 薄荷凉了夏 阅读(555) 评论(0) 推荐(0)
摘要:0x51 线性DP: [TOC] a.[√] Mr Youngs Picture Permutations "题目传送" sol: 考虑限制要求:每一排从左往右必须身高递减,每一列从第一排到最后一排身高也必须递减。 则可以发现填数时必须保证:如果从大往小填数,现在填第i行,则第i 1行填了的数必须多 阅读全文
posted @ 2019-05-26 22:03 薄荷凉了夏 阅读(467) 评论(0) 推荐(0)
摘要:"花园" Solution: 如果您敏锐的注意到了M的范围,那么不难想到状压。 状态压缩一下最后M位的放的花盆的情况。 同时还可以提前与处理一下V[i,j]表示状态i能否转移到状态j。 但是,鉴于它是一个环形的,所以似乎并不好怎么去DP(断环为链似乎也不好弄)。 所以此处用的转移还是特别巧妙的。 不 阅读全文
posted @ 2019-04-04 16:21 薄荷凉了夏 阅读(194) 评论(0) 推荐(0)
摘要:ZJOI2007仓库建设 讲一个比较呆一点的做法: 设f[i][1]表示后i个点且i点建仓库的最优解,f[i][0]表示后i个点且i点不建仓库的最优解。 那么显然可以从后往前DP: f[i][0]=mini<j<=n{f[j][1]+∑i<=k<j(X[j]-X[k])*P[j]}; f[i][1] 阅读全文
posted @ 2019-02-13 09:50 薄荷凉了夏 阅读(244) 评论(0) 推荐(0)
摘要:APIO2010特别行动队 令S为前缀和,那么n方DP: f[i]=max{f[i],f[j]+a*(S[i]-S[j])*(S[i]-S[j])+b*(S[i]-S[j])+c}; 展开,移项得到: f[j]+a*s[j]*s[j]=(2*a*s[i]+b)s[j]+f[i]- a*s[i]*s[ 阅读全文
posted @ 2019-02-12 07:56 薄荷凉了夏 阅读(132) 评论(0) 推荐(0)
摘要:HNOI2008玩具装箱 n方DP: f[i]=min{f[i],f[j]+(A[i]-B[j])*(A[i]-B[j])}; 转化为一次函数形式: f[j]+B[j]*B[j]=2*A[i]*B[j]+f[i]-A[i]*A[i]; 所以就是以f[j]+B[j]*B[j]为y,2*A[i]为x的一 阅读全文
posted @ 2019-02-11 20:31 薄荷凉了夏 阅读(227) 评论(0) 推荐(0)
摘要:从lyd蓝书入的门。 一、任务安排1 这是最弱化的板子。 首先考虑O(n3)的DP: f[i][j]=min0<=k<i([f[k][j-1]+(S*J+sumT[i])*(sumC[i]-sumC[k])); 考虑优化:因为没有限制要分成多少批,而我们之所以 多设一维j是因为我们 需要知道启动了多 阅读全文
posted @ 2019-02-10 20:20 薄荷凉了夏 阅读(297) 评论(0) 推荐(0)
摘要:蒟蒻的第一道概率DP。。 先讲一下我最开始yy的一个算法吧: 我们设f[i][j]表示当前进行了i轮,第j个人坐庄的概率是多少。 为什么这么想呢,因为进行了到第n轮后最后一个人必然是庄,同时这就是它的获胜的概率是吧。 可以发现转移也是很好想的。f[i][j]=f[i-1][last]/m 。 但是 阅读全文
posted @ 2018-10-23 21:08 薄荷凉了夏 阅读(646) 评论(0) 推荐(0)
摘要:n2暴力就不讲了。听人讲可以吸氧水过去。 这里考虑怎么优化这一个算法, 其实可以发现这个题唯一的限制就是要求满足a[i]&a[j]!=0。 那么我们可以想到,两个数只要有一位(二进制下)都是1,那么就是满足的。 所以我们对于每一个新的数,分别考虑它的二进制下的每一位, 如果那一位上是1,那么直接 接 阅读全文
posted @ 2018-10-23 20:43 薄荷凉了夏 阅读(202) 评论(0) 推荐(1)
摘要:容我吐槽一波题目名字。。 首先我们考虑如果没有空格连续产生代价这一额外条件,那么是不是很好做。 因为我们注意到,不管怎么放空格,我们最终都是把两个串匹配完了。 同时,同一位置上下都放空格是完全没有意义的。 所以我们直接设f[i][j]表示第一个匹配到了i,第二个匹配到了j。 那么转移就是f[i][j 阅读全文
posted @ 2018-10-22 22:45 薄荷凉了夏 阅读(228) 评论(2) 推荐(0)
摘要:(以下来自Luogu Voldermod 的10.21 Luogu个人赛的T1题面): 最后的战役打响了。 哈利被宣告“死亡”,伏地魔带着他的部下准备进攻霍格沃茨。但是霍格沃茨有古老的魔法保护,他们必须先摧毁这些保护。魔法保护一共有nnn层,每一层保护有两个参数:k,p。其中k表示魔法的类型,p表示 阅读全文
posted @ 2018-10-21 22:46 薄荷凉了夏 阅读(332) 评论(0) 推荐(0)
摘要:先容蒟蒻吐槽一波:模数看错调了一两小时。。。 题意: 要你在一个长度为n的序列中找到长度为m的严格上升子序列的个数,然后答案对1e9+7取模。 举个例子: 5 3 1 3 4 2 5 那么符合条件的序列就有: 1 3 4 ,1 2 5, 1 3 5 ,1 4 5, 3 4 5, 答案就是5。 既然和 阅读全文
posted @ 2018-10-20 20:17 薄荷凉了夏 阅读(204) 评论(0) 推荐(0)
摘要:NOIP 大活题。。吧 题意:给你一张n个点,m条边的图,求一棵有根生成树,使得除根节点外每个节点的不带权深度(根节点深度为1)与其父边的边权的乘积的和最小。 看起来是不是有点像最小生成树,那么大胆猜想一波。。?? 很可惜,这不是一个猜测题。。(加上玄学模拟退火好像也可以乱搞过掉) 那么再看一下n小 阅读全文
posted @ 2018-10-18 14:38 薄荷凉了夏 阅读(147) 评论(0) 推荐(0)