上一页 1 ··· 36 37 38 39 40 41 42 43 44 ··· 75 下一页
摘要: 原题链接 考察:二分+前缀和 思路: 易知w变大,y和变小,w变小,y和变大.由此发现y与w的变化关系有单调性.但是这道题求的是abs(Y-S),答案和w的变化并无单调性.我们可以求最小的>=s的Y和最大的<s的Y.再两边求最小值. 真的没必要死脑筋的返回true与false.单纯数值类型可考虑返回 阅读全文
posted @ 2021-04-10 14:26 acmloser 阅读(165) 评论(0) 推荐(0) 编辑
摘要: 原题链接 考察:线性dp+背包dp 思路: 每个横坐标可以选择按或者不按,这种组合问题求最优解可以考虑背包dp. 易知f[i][j]为以i为横坐标,j为纵坐标的最小按键次数.这道题不需要不通过后判两次dp.只需要在当前坐标存在管道后检测是否通过管道,如果不通过就是输出0 当前管道数-1.那么dp转移 阅读全文
posted @ 2021-04-10 09:31 acmloser 阅读(82) 评论(0) 推荐(0) 编辑
摘要: 原题链接 考察:线性dp 思路: 这道题就和POJ 1661差不多.f[i][0/1]表示到达第i条线段的0(左),1(右)的最小距离. f[i][0] = min(f[i-1][0]+i-1条线左端点到i条线左端点的最短距离,f[i-1][1]+i-1条线右端点到第i条线左端点的最小值) 同理右端 阅读全文
posted @ 2021-04-09 21:36 acmloser 阅读(74) 评论(0) 推荐(0) 编辑
摘要: 原题链接 考察:线性dp 此题不会,fw本f 思路: 求方案数且需要取模,基本上使用dp求解. 根据题目,dp状态一定要记录a取到哪一位,b匹配到哪一位,同时还有段数限制,所以还需要记录段数.所以设置f[i][j][k]为以a的前i位匹配了b前j位,已经用了k段. 此时还发现对于第i位,我们需要判断 阅读全文
posted @ 2021-04-09 18:46 acmloser 阅读(115) 评论(0) 推荐(0) 编辑
摘要: 原题链接 考察:线性dp 思路: 一开始的思路是定义结构体dp数组,但是会出现到达同一点剩余卡片种类不同的情况,只要卡片种类不同就会获得不同的分数,所以必须记录剩余卡片种类. 考虑到M很小,cnt(每种卡片)<=40.可以考虑开数组f[i][j][k][p][q] 表示到i点时剩余卡片为j,k,p, 阅读全文
posted @ 2021-04-09 01:33 acmloser 阅读(85) 评论(0) 推荐(0) 编辑
摘要: 原题链接 考察:线性dp+贪心 本蒟蒻真真菜到抠脚...二维MLE,滚动后TLE,绝望...已经菜到不会写普及组的题. 错误思路: 设f[i][j]为i秒时魔力为j的最大距离,总共三种决策: 一、 休息, f[i][j] = f[i-1][j] 二、 魔法,f[i]j] = f[i-1][j+10] 阅读全文
posted @ 2021-04-09 00:14 acmloser 阅读(184) 评论(0) 推荐(0) 编辑
摘要: 原题链接 考察:树形dp 思路: 树上最大值,最小值,方案数是树形dp常考的问题.这里设置f[i][j]为在以i为根的子树中,i的颜色是j的最大结点数. 设置2为绿色,初始化所有f[i][2] = 1.如果当前父节点u只有一个子结点x f[u][k] += max(f[x][j]) j!=k. 如果 阅读全文
posted @ 2021-04-08 19:06 acmloser 阅读(60) 评论(0) 推荐(0) 编辑
摘要: 原题链接 考察:树形dp 思路: 换根dp,f[i][j][0]表示以i为根的子树中与i距离不超过j的权值和.f[i][j][1]表示以i为起点,往上走距离不超过j的点集合. 易知f[i][j][0] += f[v][j-1][0] 其中f[i][0][0] = w[i] 如果是往上走:f[v][j 阅读全文
posted @ 2021-04-08 14:21 acmloser 阅读(36) 评论(0) 推荐(0) 编辑
摘要: 原题链接 考察:树形dp 错误思路: 换根dp,正向点权值0,逆向点权值1.求每个点到其他点的距离和. 此思路错在会多次计算要旋转的边. 思路: 换根dp,需要两次dfs求当前结点i往下走的逆转数和往上走的逆转数.向下走的计算很容易 f[u][1]+=f[v][1]+road[i].w 向上走如果直 阅读全文
posted @ 2021-04-08 00:58 acmloser 阅读(35) 评论(0) 推荐(0) 编辑
摘要: 1. 树的重心:重心是指树中的一个结点,如果将这个点删除后,剩余各个连通块中点数的最大值最小,那么这个节点被称为树的重心。 性质: 树中所有点到重心的距离和是最小的,一棵树最多有两个重心(比如就两个点连个边). 把两棵树通过加一条边得到一颗新的树,新的树的重心必然在连接原来两棵树重心的路径上. 一棵 阅读全文
posted @ 2021-04-07 21:32 acmloser 阅读(62) 评论(0) 推荐(0) 编辑
上一页 1 ··· 36 37 38 39 40 41 42 43 44 ··· 75 下一页