动态规划
jesHrz
这个作者很懒,什么都没留下…
展开
-
Computer HDU - 2196 (树形dp)
题目来源:Computer 题意 给定一棵有n个节点的树,根的编号为1,求每个点到离它最远的点的距离。 思路 先dfs求出每个点u向下的最大距离f[u][0]和次大距离f[u][1],并且用数组node[u]记录最大路经过了与u直接相邻的哪一个子节点。 现在用f[u][2]记录满足题意的最大路。 再跑一边dfs,对于当前节点u,如果它的子节点v,满足了node[u] = v,说明u的最...原创 2018-08-05 12:45:00 · 87 阅读 · 0 评论 -
CF - 1066F 动态规划
题目链接 题意 给出n个全在第一象限的点,从原点出发,只能在走完切比雪夫距离相等的点后才能走其他点,问最少走多少步能经过所有点。 思路 不看标签绝对想不到是个dp 首先有个最优策略:在走每一层的时候从左上角走到右下角或从右下走到左上是距离最短的 所以可以先处理出每一层左上和右下的点分别是什么然后一层一层地转移。 ps[i][0,1]ps[i][0, 1]ps[i][0,1]表示第i层左上和右下的...原创 2019-03-01 09:37:32 · 271 阅读 · 0 评论 -
Gym-101982D (假的)数位dp
链接中的D题 题意 问在[0,2b−1][0, 2^b-1][0,2b−1]中为k的倍数的数的二进制表达中1的个数。 思路 g[i][j]g[i][j]g[i][j]表示前i位的数中模k为j的数的1的个数,答案为g[b][0]g[b][0]g[b][0] 第i位数有两种情况,为0的时候g[i][j]=g[i−1][j]g[i][j] = g[i-1][j]g[i][j]=g[i−1][j],为...原创 2019-03-01 16:01:37 · 587 阅读 · 0 评论 -
ZOJ-3707 斐波那契 数论
vjudge链接 题意 定义s[n]s[n]s[n]为集合{1,2,3,⋯ ,n}\{1, 2, 3, \cdots, n\}{1,2,3,⋯,n}中不包含连续数字的子集个数。如果s[n]s[n]s[n]满足对于任意的iϵ[1,n)i\epsilon[1, n)iϵ[1,n)都有gcd(s[i],s[n])=1gcd(s[i], s[n]) = 1gcd(s[i],s[...原创 2019-03-02 16:49:56 · 199 阅读 · 0 评论 -
BZOJ-2286 虚树+树形dp
题目链接 题意 一棵有n个节点的无向树,根节点为1,告诉你k个关键节点,现在要割断一些边使得这k个点与根节点不连通,求割掉的边的最小边权和。 思路 记录dis[v]表示点1到点v的路径中最小的边权。 如果u是关键节点,dp[u] = dis[u],否则dp[u] += min(dis[v], dp[v]) 使用虚树优化。虚树仅仅记录了关键节点和他们的lca 代码 #include <bits...原创 2019-04-23 20:07:54 · 129 阅读 · 0 评论 -
2018CCPC吉林 D题 The Moon 概率dp
题目链接 The Moon 题意 按照下述流程玩抽奖游戏,当抽中奖品后游戏结束 概率qqq初始化为2%2\%2% 玩家有p%p\%p%的概率赢得游戏 如果赢得游戏则进入步骤3否则进入步骤4 玩家有qqq的概率抽中奖品.如果没有抽中奖品则qqq变为min(100%,q+2%)min(100\%, q+2\%)min(100%,q+2%),然后回到步骤1 qqq变成min(100%,q+1.5%),...原创 2019-07-16 19:41:02 · 246 阅读 · 0 评论