随笔分类 -  动态规划

摘要:"题面戳我" Solution 并不会做,看了下题解大概了解了。期望这个东西好难搞啊qwq 我们定义$dp[i][j]$表示第$i$步,拿到宝物前的状态为$j$。 正着来会有很多不合法的情况,剔除比较麻烦,我们反着来考虑,因为你想如何是合法,就是状态表示拿得物品个数小于等于步数嘛,倒着来最后答案根据 阅读全文
posted @ 2018-07-23 21:12 Ning_Mew 阅读(145) 评论(0) 推荐(0)
摘要:" bzoj1597 懒得复制,戳我戳我" Solution: 线性DP~~打牌~~$+$斜率优化 定义状态:$dp[i]$到了位置$i$最少花费 首先我们要发现,如果有一个小方块能被其他的大方块包围,其实可以忽略这个小方块,因为我们可以把他们俩捆绑,小方块的边长不会对求值造成贡献 然后我们可以按照 阅读全文
posted @ 2018-06-21 18:23 Ning_Mew 阅读(155) 评论(0) 推荐(0)
摘要:" bzoj1911 ,懒得复制,戳我戳我" Solution: 线性DP~~(打牌)~~ $dp$方程还是很好想的:$dp[i]=dp[j 1]+a (s[i] s[j 1])^2+b (s[i] s[j 1])+c$ 我们假定$js[i]$$ 然后维护一个下凸包就好了 Code: cpp //I 阅读全文
posted @ 2018-06-21 18:23 Ning_Mew 阅读(174) 评论(0) 推荐(0)
摘要:" bzoj1260 ,懒得复制,戳我戳我" Solution: ~~这种题目我不会做qwq,太菜了~~ 区间打牌~~(dp)~~ 用f[l][r]表示从l到r最少需要染几次色。 状态转移方程: 1.$f[l][r]=min(f[l][i],f[i+1][r]) (l using namespace 阅读全文
posted @ 2018-06-21 18:23 Ning_Mew 阅读(183) 评论(0) 推荐(0)
摘要:" bzoj1875 ,懒得复制,戳我戳我" Solution: 看到这道题,看的出是个dp,每个点$t$时刻到达的方案数等于 $t 1$到连过来的点方案数之和 但又因为题目有要求不能走一样的边回去 不是说不能回到之前那个点,而是不能走一样的边 又因为$t$很大,每次我们的都是做的重复的操作,我们就 阅读全文
posted @ 2018-05-12 16:51 Ning_Mew 阅读(224) 评论(0) 推荐(0)
摘要:" bzoj1055,懒得复制,戳我戳我 " Solution: 区间动规 (以后开始动规会在solution前面标注是啥动规 我觉的这道题挺难想了,但其实状态定义了一下子就出来了~~(还是不行啊)~~ 我们定义状态$dp[i][j][sta]$,表示在$i$到$j$区间可不可以合成字符$sta$, 阅读全文
posted @ 2018-05-12 16:51 Ning_Mew 阅读(207) 评论(0) 推荐(0)
摘要:" bzoj1207 ,懒得复制,戳我戳我" Solution: 挺傻逼的一个$dp$,直接推就好了 这题在bzoj上的数据有点问题,题目保证每个时间点不会出现在同一位置两个地鼠,然而他有= =(还浪费我20分钟差错 Code: $luogu$ AC代码: cpp //It is coded by 阅读全文
posted @ 2018-05-12 16:50 Ning_Mew 阅读(307) 评论(0) 推荐(0)
摘要:" bzoj4472 ,懒得复制,戳我戳我" Solution: 题面意思:从$1$号节点出发,每到一个节点就必须停下,获得节点权值(每个节点只会获得一次),每个点有个规定的停留次数,求最大可获得多大权值,并且判断是否只有唯一的路线才能获得这个权值 直接$dp$储存子树最大获得权值就行,顺便要记录方 阅读全文
posted @ 2018-04-29 15:15 Ning_Mew 阅读(221) 评论(0) 推荐(0)
摘要:" bzoj4033 ,懒得复制,戳我戳我" Solution: 定义状态$dp[i][j]$表示$i$号节点为根节点的子树里面有$j$个黑色节点时最大的贡献值 然后我们要知道的就是子节点到根节点这条边会计算次数就是:子树中白色节点数$ $子树外白色节点数$+$子树中黑色节点数$ $子树外黑色节点数 阅读全文
posted @ 2018-04-29 15:15 Ning_Mew 阅读(199) 评论(0) 推荐(0)
摘要:"懒得复制,戳我戳我" Solution: 傻逼题目,直接dp就可以了,他是求最后一次的最大值 Code: cpp //It is coded by Ning_Mew on 4.17 include using namespace std; const int maxn=55,maxl=1000+7 阅读全文
posted @ 2018-04-29 15:14 Ning_Mew 阅读(176) 评论(0) 推荐(0)
摘要:" bzoj1864 ,懒得复制,戳我戳我" Solution: 其实想出来了$dp$方程推出来了最大值,一直没想到推最小值 $dp[i][1/0]$表示$i$号节点的子树中的绿色染色最大值,$1$表示该节点染色,$0$表示该节点不染色 $$dp[i][1]=dp[ls][0]+dp[rs][0]+ 阅读全文
posted @ 2018-04-29 15:14 Ning_Mew 阅读(160) 评论(0) 推荐(0)
摘要:"懒得复制,戳我戳我" Solution: $dp[i][j][k]$以$i$为子树根节点,到根节点中有$j$条公路没修,$k$条铁路没修,存子树不便利和 $dp[i][j][k]=min(dp[ls][j 1][k]+dp[rs][j][k] , dp[ls][j][k]+dp[rs][j+1][ 阅读全文
posted @ 2018-04-29 15:14 Ning_Mew 阅读(302) 评论(0) 推荐(0)
摘要:" bzoj1190 ,懒得复制,戳我戳我" Solution: 这道题其实是一个背包(分组背包),但是由于数字比较大,就要重新构造dp式子。啃了三天才懂。 $dp[i][j]$表示背包容积为$j 2^i$时的最大价值。 首先,因为每一个物品一定是$a 2^b$,我们可以按照$b$值先按照普通的分组 阅读全文
posted @ 2018-04-29 15:14 Ning_Mew 阅读(185) 评论(0) 推荐(0)
该文被密码保护。
posted @ 2018-04-17 16:41 Ning_Mew 阅读(16) 评论(0) 推荐(0)
摘要:"原题戳我" Solution: (部分复制 "Navi_Aswon博客" ) 解释博客中的两个小地方: $$\sum_{\left(S是G中y→x的一条路径的点集\right))}\prod_{2≤j≤n,(j∉S)}degree_j$$ 因为加了$x$到$y$这条边出现了环,所以环上一定有一条边 阅读全文
posted @ 2018-03-17 11:38 Ning_Mew 阅读(274) 评论(0) 推荐(0)
摘要:题目描述 Farmer John has purchased a lush new rectangular pasture composed of M by N (1 ≤ M ≤ 12; 1 ≤ N ≤ 12) square parcels. He wants to grow some yummy 阅读全文
posted @ 2018-02-25 15:00 Ning_Mew 阅读(325) 评论(0) 推荐(0)
摘要:题目背景 小明过生日的时候,爸爸送给他一副乌龟棋当作礼物。 题目描述 乌龟棋的棋盘是一行N个格子,每个格子上一个分数(非负整数)。棋盘第1格是唯一的起点,第N格是终点,游戏要求玩家控制一个乌龟棋子从起点出发走到终点。 乌龟棋中M张爬行卡片,分成4种不同的类型(M张卡片中不一定包含所有4种类型的卡片, 阅读全文
posted @ 2017-09-28 11:59 Ning_Mew 阅读(407) 评论(0) 推荐(1)