![](https://img-blog.csdnimg.cn/20201014180756926.png?x-oss-process=image/resize,m_fixed,h_64,w_64)
DP
wangyiyang2
cwy&wyy
展开
-
题解 - 保卫王国(倍增做法)
题目意思题目传送门Sol\mathrm{Sol}Sol首先对于每次分别做 dp 是 O(n2)O(n^2)O(n2),即设 fu,0/1f_{u,0/1}fu,0/1 表示这个点选不选的最小代价,转移就是简单背包:fu,0=∑v∈ufv,1,fu,1=∑v∈umin(fv,0,fv,1)f_{u,0}=\sum\limits_{v∈u}f_{v,1},f_{u,1}=\sum\limits_{v∈u}\min(f_{v,0},f_{v,1})fu,0=v∈u∑fv,1,fu,1=v∈u∑原创 2020-09-14 22:19:28 · 165 阅读 · 1 评论 -
题解 CF1392D 【Omkar and Bed Wars】
题解 - P1392D\mathrm{P1392D}P1392D题目描述题目传送门Sol\mathrm{Sol}Sol好像大家都是找规律做法,我提供一种 dp 的做法设 fi,j,kf_{i,j,k}fi,j,k 表示到第 iii 个人攻击方向为 j∈[0,1]j∈[0,1]j∈[0,1] 当前受到 k∈[0,1,2]k∈[0,1,2]k∈[0,1,2] 个人攻击的最少修改次数。我们每次枚举上一个人的攻击方向 ljljlj 以及受到攻击次数 lklklk 进行转移。分 444 种情况进行讨论:原创 2020-08-18 15:22:38 · 270 阅读 · 0 评论 -
题解 CF1391D 【505】
题解 - CF1391D\mathrm{CF1391D}CF1391D题目意思就是给你个 n×mn\times mn×m 的矩阵,为了使其的任意长度为偶数的正方形子矩阵里要含有奇数个 111 最少要改变几个 ai,ja_{i,j}ai,j 的状态。Sol\mathrm{Sol}Sol首先可以知道 4×44\times 44×4 的合法矩阵是不存在的,那么 min(n,m)>3\min(n,m)>3min(n,m)>3 的矩阵也是不存在的。那么我们只要分类讨论分别 min(n原创 2020-08-10 10:16:22 · 362 阅读 · 0 评论 -
P1287 盒子与球
题解 - P1287题目描述题目传送门Sol\mathrm{Sol}Sol暴力DPDPDP我们考虑设 fi,jf_{i,j}fi,j 表示到第 iii 个球放入 jjj 个盒子里的方案数。考虑如何转移,莫过于两种情况:放入原有的盒子,重新开一个盒子。对于第一种情况 fi,j=fi−1,j×jf_{i,j}=f_{i-1,j}\times jfi,j=fi−1,j×j 即在原有的箱子中选一个对于第二种情况 fi,j=fi−1,j−1×(m−j+1)f_{i,j}=f_{i-1,j-1原创 2020-08-03 07:52:45 · 301 阅读 · 0 评论 -
题解 P2135 【方块消除】
题解 - P2135题目意思题目传送门Sol\mathrm{Sol}Sol区间dp一道模拟赛的题目,然后一直在推 fl,rf_{l,r}fl,r 为 [l,r][l,r][l,r] 区间的最大贡献的转移一直没搞出来,后来发现由于删除一块会使得两端颜色相同的块合并就很难转移,于是我们多记录一维 fl,r,sf_{l,r,s}fl,r,s 表示 [l,r][l,r][l,r] 区间内以及在 (r,n](r,n](r,n] 这段区间紧接 rrr 的与 colrcol_rcolr 相同的个数为 ss原创 2020-08-01 19:30:00 · 956 阅读 · 0 评论 -
洛谷P4859 题解
二项式反演经典题我们先设 dpi,jdp_{i,j}dpi,j 表示到 iii 使得 a>ba>ba>b 的个数为 jjj 的方案数。显然 dpi,j=dpi−1,j+dpi−1,j−1×(bigi−j+1)dp_{i,j}= dp_{i-1,j}+dp_{i-1,j-1}\times (big_i-j+1)dpi,j=dpi−1,j+dpi−1,j−1×(bigi−j+1),其中 bigibig_ibigi 为在 bbb 中比 aia_iai 的个数。我们在按套路.原创 2020-07-27 21:36:40 · 203 阅读 · 0 评论 -
题解 CF526E 【Transmitting Levels】
题解 - CF526E\mathrm{CF526E}CF526E题目意思题目传送门Sol\mathrm{Sol}Sol真没想到 O(nlog(n)×Q)O(n\log(n)\times Q)O(nlog(n)×Q) 卡卡常竟然过了,虽然有更优秀的解法。考虑枚举第一段的起点 sss 以及用 fif_ifi 表示以其作为起点的最小分组。以及假设 remremrem 为序列的最后部分与开始部分接起来的值,那么答案就考虑如果 rem≤birem\leq b_irem≤bi 即为fif_ifi原创 2020-07-27 21:33:40 · 217 阅读 · 0 评论 -
题解 P6419 【[COCI2014-2015#1] Kamp】
题解 - P6419\mathrm{P6419}P6419题目意思题目传送门Sol\mathrm{Sol}Sol因为要求每个点为根的答案,显然会想到换根DPDPDP(虽然不一定我们首先先申明几个变量:fuf_ufu表示把uuu子树内的任务做完并且回到uuu点的花费gug_ugu表示uuu子树外的花费disu,0/1dis_{u,0/1}disu,0/1表示uuu子树内的最长链/次长链upuup_uupu表示uuu子树外的最长链那么对于每个点的贡原创 2020-06-25 18:05:13 · 580 阅读 · 0 评论 -
题解 - P6603 甜梦
题解 - P6603\mathrm{P6603}P6603甜梦题目意思题目传送门Sol\mathrm{Sol}Sol一道很神仙的状压DPDPDP我们发现l≤12l\leq 12l≤12,我们自然而然地想到了状压。于是fS,uf_{S,u}fS,u表示在状态SSS下较小的点为uuu的最大快乐值。SSS这个东西其实是对[u,u+l][u,u+l][u,u+l]这段区间的二进制表示。我们如何用较小uuu标号去推出较大标号vvv,我们首先说出结论v=u+High(S)v=u+High(原创 2020-06-15 09:49:01 · 196 阅读 · 0 评论 -
题解 - CF613E Puzzle Lover
CF613E Puzzle Lover\mathrm{CF613E\ Puzzle \ Lover}CF613E Puzzle Lover头铁地去做一道∗3200*3200∗3200的题,没想到还是比较好想~~(看题解~~题目意思题目传送门就是给你一个2×n2\times n2×n的字符矩阵,以及给你个mmm的字符串ttt。问你有多少种方案使得路径上的字符连接起来的字符串为ttt(每次可以往上下左右走,但不能走到同一格)。答案对1e9+71e9+7原创 2020-05-12 16:10:42 · 138 阅读 · 0 评论 -
题解 - [HAOI2008]木棍分割
[HAOI2008]\mathrm{[HAOI2008]}[HAOI2008] 木棍分割吐槽环节为什么一分部分分不给啊,一开始写了个n3n^3n3,居然直接爆蛋。前缀和优化DPDPDP还要滚存题目意思题目传送门Sol\mathrm{Sol}Sol前置知识:前缀和优化DP对于第一问就是个hhhhhh问题,直接二分就可以了。这个没什么好讲,看看代码:inline bool...原创 2020-04-30 23:54:16 · 183 阅读 · 0 评论 -
题解 - CF662C Binary Table
题解 - CF 662C Binary Table\mathrm{CF\ 662C\ Binary \ Table}CF 662C Binary Table题目意思CF662C Binary Table有一个n×mn\times mn×m的表格,每个元素都是0/10/10/1 ,每次操作可以选择一行或一列,把 0/10/10/1翻...原创 2020-04-18 12:59:22 · 131 阅读 · 0 评论 -
牛客挑战赛30 - C 小G砍树
题解 - 牛客挑战赛30 - C 小G砍树一道练习换根DPDPDP以及计数的好题。题目意思小G砍树给你一个nnn个节点的树,每次只能删除度为111的节点问删光所有节点的总方案数。n≤105n\leq 10^5n≤105Sol\mathrm{Sol}Sol前置知识:换根DP,组合数我们如果把状态设为fuf_ufu表示最后一个删数uuu节点的总方案数。但是子树之间有相互影响...原创 2020-04-17 16:13:38 · 183 阅读 · 0 评论 -
题解 - CF1197D Yet Another Subarray Problem
CF1197D Yet Another Subarray Problem\mathrm{ CF1197D \ Yet \ Another \ Subarray \ Problem}CF1197D Yet Another Subarray Problem 题解题目意思就是给你一个序列aaa,以及m,km,km,k,...原创 2020-04-02 16:01:04 · 184 阅读 · 0 评论 -
题解 - 「JOISC 2020 Day1」建筑装饰 4
「JOISC 2020 Day1」\mathrm{ 「JOISC \ 2020 \ Day1」}「JOISC 2020 Day1」 建筑装饰4 题解题目意思「JOISC 2020 Day1」建筑装饰 4Sol\mathrm{Sol}SolSol1\mathrm{Sol1}Sol1对于O(n2)O(n^2)O(n2)还是比较容易的。我们考虑设fi,...原创 2020-03-24 23:27:04 · 261 阅读 · 0 评论 -
题解 - CF613D Kingdom and its Cities
题解 - CF613D Kingdom and its Cities\mathrm{CF613D \ Kingdom \ and \ its \ Cities}CF613D Kingdom and its Cities一道 虚树+树形DP好题。题目意思戳这里Sol\mathrm{Sol}Sol这道题目的...原创 2020-03-19 14:30:58 · 208 阅读 · 0 评论 -
题解 - [CQOI2012]局部极小值
题解 - [CQOI2012]\mathrm{[CQOI2012]}[CQOI2012] 局部极小值一道超神状压DPDPDP,总算看懂题解。。。这里来写写自己的心路历程。题目意思戳这里Sol\mathrm{Sol}Sol首先要明白为什么能用状压做这道题目,因为最多只会存在888个局部最小值(即各一个′.′'.'′.′放一个′X′'X'′X′)于是就有fi,Sf_{i,S}fi...原创 2020-03-19 11:21:10 · 312 阅读 · 0 评论 -
题解 - P4342 [IOI1998]Polygon
题解 - P4342 [IOI1998] PolygonP4342 \ [IOI1998]\ PolygonP4342 [IOI1998] Polygon题目意思lg 4342lg\ 4342lg 4342SolSolSol一道比较经典的区间DPDPDP题。视乎远古IOIIOIIOI特别喜欢区间DPDPDP状态设立很简单...原创 2020-03-12 14:44:42 · 204 阅读 · 0 评论 -
题解 P4290 [HAOI2008]玩具取名
题解- P4290[HAOI2008]P4290 [HAOI2008]P4290[HAOI2008]玩具取名在复习区间DPDPDP的时候做到题目觉得挺好的就做了下,差点做不出来。题目意思lg 4290lg\ 4290lg 4290SolSolSol这道题目我们先设两个数组fi,j,kf_{i,j,k}fi,j,k表示[i,j][i,j][i,j]能否用W,I,N...原创 2020-03-12 13:12:45 · 170 阅读 · 0 评论 -
题解 CF264C 【Choosing Balls】
题解- CF246C Choosing Balls题目意思说人话就是你可以选若干个物品,若这次选择的物品与上次选的cic_ici相同那么这个的贡献就是a∗via*v_ia∗vi否则是b∗vib*v_ib∗vi。要使得利益最大化。SolSolSol一开始我以为是什么贪心。后来想想认为还是一个DpDpDp。就是要利用其特殊的一个性质单调性我们设fif_ifi表示到现在选择的最...原创 2020-03-10 09:58:22 · 118 阅读 · 0 评论 -
题解 P6005 【[USACO20JAN]Time is Mooney G】
题解-P6005 Time is Mooney G题目意思就是给你一个有向图,你在上面走,没经过一个点可以获得mim_imi,最后你要减去sum2sum^2sum2(走过的边数)∗C*C∗CSolSolSol考虑DPDPDP,我们设fi,jf_{i,j}fi,j表示第iii天到达城市jjj的最大收益。转移很简单fi,j=max(fi−1,lasj+mj,fi,j)f_{i,...原创 2020-03-10 09:57:09 · 306 阅读 · 0 评论 -
题解 P2569 【[SCOI2010]股票交易】
题解- P2569 股票交易题目意思由于题面过长,不再描述。戳这里SolSolSol这道题目想清楚后还是不难的,是一道不错的单调队列练习题。首先我们要明确状态:fi,jf_{i,j}fi,j表式到第iii天拥有jjj个股票的最大收益。这个状态还是挺显然的,不像某些题目卡状态。对于转移,要分成多种情况来考虑:(I)(I)(I) 我们就是没有任何积蓄的情况下买(相当于一个...原创 2020-03-09 18:53:26 · 172 阅读 · 0 评论 -
题解 P3523 【[POI2011]DYN-Dynamite】
题解- P3523 DYN-Dynamite题目意思就是在一颗树中选mmm个点使得这mmm个点到关键点的距离最大值最小。SolSolSol双倍经验总算看懂题解来重新理解一遍,加深记忆。。回归正题,因为题目要我们求最大值最小显然会想到二分。首先我们设几个变量:fif_ifi表示以iii为子树最近选择节点的距离gig_igi表示以iii为子树最远还没有选择的关键点距离...原创 2020-03-09 18:51:59 · 163 阅读 · 0 评论 -
题解 CF722E 【Research Rover】
题解- CF722E题目意思题目就是让你从(1,1)(1,1)(1,1)走到(n,m)(n,m)(n,m)的道路中有kkk个特殊点,没经过一个特殊点会使分数变为原来一半,问从(1,1)(1,1)(1,1)到(n,m)(n,m)(n,m)的期望得分(对109+710^9+7109+7取模)SolSolSol我们首先把(1,1),(n,m)(1,1),(n,m)(1,1),(n,m)也...原创 2020-03-09 18:47:05 · 194 阅读 · 0 评论 -
题解 AT3673 【[ARC085D] NRE】
题解- AT3673[ARC085D]NREAT3673 [ARC085D] NREAT3673[ARC085D]NRE题目意思就是你原有一个全是000的序列aaa,有mmm个操作,你可以选取其中任意多个,每次操作(l,r)(l,r)(l,r),即把al−ara_l-a_ral−ar的值变为111,问∑ai≠bi\sum a_i≠b_i∑ai=bi。SolSolSol一...原创 2020-03-09 18:45:26 · 277 阅读 · 0 评论