动态规划Dp
时间次元
这个作者很懒,什么都没留下…
展开
-
BZOJ #4832. 抵制克苏恩
题意场上有1血,2血,3血随从,总数不超过7,外加一个英雄每次克苏恩会等概率攻击一个人,若随从被打一下还没死,且场上随从<7,那么会有一个3血随从问英雄收到的伤害的期望值题解概率Dp,p[i][a][b][c]表示攻击到第i次,场上有1血,2血,3血随从分别a,b,c个的概率f[i][a][b][c]表示攻击到第i次,场上有1血,2血,3血随从分别a,b,c个时英雄收到伤害的期望...原创 2018-11-23 20:12:03 · 154 阅读 · 0 评论 -
洛谷 #1850. 换教室
题意有n个时间段,每个时间段有2节课,最多可以换m次课,概率给出把校园抽象成无向图,求耗费最小体力值题解这是一道期望Dp,f[i][j][k]表示考虑到第i个教室,换了j次,k为0/1,表示这次是否换分四种情况,具体见代码调试记录double的输入提示符是%lf,不是%llf害老子调了一个小时害老子调了一个小时害老子调了一个小时#include <cstdio>#i...原创 2018-11-28 15:40:53 · 260 阅读 · 0 评论 -
洛谷 #4401. 矿工配餐
题意n辆矿车去两个矿洞,最近3次食物不同的种数为矿产量,有3种食物,问最大矿产量题解Dp,f[i][a1][a2][a3][a4] 表示处理到第i辆矿车,1号矿洞和2号矿洞前两次的食物为a1,a2,a3,a4调试记录算val时要把当前的放在最前面(因为函数的判断)#include <cstdio>#include <algorithm>#include &l...原创 2018-11-27 15:31:43 · 190 阅读 · 0 评论 -
洛谷 #1541. 乌龟棋
题意n个格子中有一些分数,到达一个格子就可以拿到。初始在1,n为终点有m张牌,保证用完刚好到达终点。牌有向前移动1,2,3,4格四种,求最高分数题解dp[j1][j2][j3][j4]表示用j1张‘1’牌,j2张‘2’牌,j3张‘3’牌,j4张‘4’牌能达到的最高分数调试记录判断j1 != 0要用if (j1),不是if (!j1)#include <cstdio>#i...原创 2018-12-04 16:34:09 · 148 阅读 · 0 评论 -
bzoj #2152. 聪聪可可
题意在一棵树上任取两点,问这两点间路径和为3倍数的最简概率题解树形Dp,f[x][0/1/2]记录x点以下(默认1为根) mod 3 = 0/1/2 的边的个数\(\ f[x][0]\equiv0\)\(\pmod{3}\)\(\ f[x][1]\equiv1\)\(\pmod{3}\)\(\ f[x][2]\equiv2\)\(\pmod{3}\)更新 ans += f[x][0]...原创 2018-12-04 16:31:03 · 132 阅读 · 0 评论 -
BZOJ #3156. 防御准备
题意1~n放城堡/木偶,在第i位放城堡的 \(\ cost_i\) 给出,放木偶的 \(\ cost_i = (j-i)\)(j为i右边第一个城堡)问最小花费题解普通\(\theta{(n^2)}\)Dp会挂 \(\ n\leq 100000\)需要斜率优化,为了方便,我们从左往右Dpf[i] 为在这个点放城堡的最小花费(因为第n个必须放城堡)fi=minj&lt;iai+...原创 2018-11-25 20:18:42 · 145 阅读 · 0 评论 -
洛谷 #1654. OSU!
题意为什么不能叫UNO每个状态为0/1,问连续1的长度的立方和的期望值题解期望Dp,维护1维、2维、3维期望值调试记录3维要算上为0的期望#include <cstdio>#define maxn 100005using namespace std;double cnt[4][maxn], chance[maxn];int n;int main(){ s...原创 2018-11-25 20:15:18 · 154 阅读 · 0 评论 -
洛谷 #4316. 绿豆蛙的归宿
题意有向图,等概率选择路径,问期望路径长题解概率Dp,f[i]表示i节点的期望路径长因为Dp无后效性,所以反向建图,来一遍Toposort就好了调试记录没有反向建图#include <cstdio>#include <queue>#define maxn 1000005#define double long doubleusing namespace...原创 2018-11-25 20:14:51 · 158 阅读 · 0 评论 -
洛谷 #1941. 飞扬的小鸟
题意玩Flappy Bird,到天花板不能再往上,问最小点击屏幕次数 或 最多通过的管子数题解Dp,f[i][j]表示到i,j需要的最小步数,往上是完全背包,往下是01背包调试记录数组开得太大了往上写成01背包了#include <cstdio>#include <algorithm>#include <cstring>#define max...原创 2018-11-25 20:11:16 · 220 阅读 · 0 评论 -
NewCoder #Contest 026 B. 烟花
题意每个烟花有p[i]的概率被点燃,问期望点燃数 和 恰好点燃k个的概率题解第一问,随便搞搞你就会发现,只要全部加起来就行了第二问,典型期望Dp,f[i][j]表示前i个里点燃j个的概率怕爆空间,可以把前一维滚动掉(然而考场懵逼)调试记录Dp方程里有一个地方没有%2#include <cstdio>#define maxn 100005using namespac...原创 2018-11-23 20:18:54 · 184 阅读 · 0 评论 -
洛谷 #1970. 花匠
题意在一个序列中,删去一些数,使 谷峰/谷底 的数量最大化题解f[i][0] -> 当i为谷峰时前i个数中谷峰+谷底的maxf[i][1] -> 当i为谷底时前i个数中谷峰+谷底的max调试记录dp方程条件符号打错#include <cstdio>#include <algorithm>#include <cstring> #de...原创 2018-11-28 15:42:34 · 163 阅读 · 0 评论