![](https://img-blog.csdnimg.cn/20201014180756724.png?x-oss-process=image/resize,m_fixed,h_64,w_64)
dp
文章平均质量分 86
Fop_zz
这个作者很懒,什么都没留下…
展开
-
BZOJ 1010: [HNOI2008]玩具装箱toy——斜率优化
BZOJ 1010第二道斜率优化,对斜率优化有了新的理解。开心(大雾这题的题面其实就是在说 斜率优化!斜率优化!斜率优化!好吧就是道裸题我们考虑更新f[i]时选择的节点如果k比j更优则有:f[j]+(j-i+sum[i]-sum[j]-L)^2f[j]+(sum[i]-sum[j])^2-2*(i-j+L)*(sum原创 2017-07-10 20:08:50 · 883 阅读 · 0 评论 -
BZOJ 1222: [HNOI2001]产品加工
BZOJ 1222很神奇的一个DP题嗯、、、这种方程我也是第一次见ORZf[i][j]表示完成前i个产品的加工,第一台机器用时j时,第二台机器用时的最小值转移显然:f[i][j]=min(f[i][j],f[i-1][j-a[i],f[i-1][j]+b[i],f[i-1][j-z[i]]+z[i])空间可以压维不是问题然而我感觉理论上来说时间复原创 2017-07-11 15:10:05 · 310 阅读 · 0 评论 -
BZOJ 2023: [Usaco2005 Nov]Ant Counting 数蚂蚁——DP
BZOJ2023我好弱啊、、只会刷水题啊。。 这题我们首先考虑暴力的n^3 dp,f[i][j]代表前i个种类的蚂蚁构成size为j的集合的方案数转移枚举第i类蚂蚁选了几个,可以在n^3的复杂度内解决此题不过 应该是T*n^2,。。。所以显然过不去考虑优化我们在n^3时的dp转移:f[i][j]=sigma(f[i-k][j-1])那么显然原创 2017-07-07 22:13:16 · 340 阅读 · 0 评论 -
BZOJ 1663: [Usaco2006 Open]赶集 floyd(划掉+dp
bzoj1663神!他!妈!虽然乡间小路奇特的布局使得从i号商店走到j号商店的最短路不一定是直接连接这两个商店的那条,但约翰并不会选择那些会经过其他商店的路线,只是直接走到目标商店等待礼物的送出.被坑死。。。首先按礼物顺序排序,dp[i]表示一定取第I个获得的最多礼物然后n^2转移即可#include #include #include #incl原创 2017-07-07 15:14:22 · 324 阅读 · 0 评论 -
BZOJ 1304: [CQOI2009]叶子的染色 树形dp
第一眼感觉像贪心,但是仔细想了想显然不行。那么考虑dp,f[i][j]表示i这个节点染成j色后,以它为根的子树满足要求,需要染多少个点j色的话……不包含无色,后面再讲然后这是一棵无根树?怎么办?反正也无所谓……你随便拎个非叶子节点当根就可以了,比如说假装是n+1然后我们考虑转移son[x]表示x的其中一个子节点f[x][0]+=min(f[son[x]]原创 2017-07-24 16:17:42 · 409 阅读 · 0 评论 -
BZOJ 1746: [Usaco2005 open]Lazy Cows
1746一道思维复杂度不高...代码细节很多的dp题这题突破口显然就在于只有2行那么我们考虑第i列的状态共有五种:1. 没有纸片覆盖2.上边被覆盖3.下边被覆盖4.被同一纸片覆盖5.被不同的纸片覆盖离散后,显然不存在第一种状态那么我们用dp[i][t]表示第i个有宝藏的列 状态为t的最小面积于是就可以转移了实现细节见代码……原创 2017-10-12 20:27:13 · 361 阅读 · 0 评论 -
BZOJ 4742: [Usaco2016 Dec]Team Building ——DP
4742挺简单的一个dp首先对两组牛分别排序状态f[i][j][k]表示前i只约翰的牛 和前j只保罗的牛 各选k只 构成序列的种类数#include#include#include#include#include#include#define For(i,j,k) for(int i=j;i<=k;++i)#define Dow(i,j,k) for(int原创 2017-10-12 20:32:27 · 464 阅读 · 0 评论