上一页 1 ··· 10 11 12 13 14 15 16 17 18 ··· 69 下一页
摘要: $dp$,斜率优化。 和HDU 2829基本上是一样的。这题还比那题简单,得到斜率的式子很方便。 阅读全文
posted @ 2017-01-26 12:57 Fighting_Heart 阅读(133) 评论(0) 推荐(0) 编辑
摘要: 斜率优化。 设$s[i]$表示前缀和,$avg(i,j)=(s[j]-s[i-1])/(j-(i-1))$。就是$(j,s[j])$与$(i-1,s[i-1])$两点之间的斜率。 如果,我们目前在计算$px$与哪个点相连斜率最大,那么一定不会是$pj$点。因为不是$pi$比优就是$pk$比$pi$优 阅读全文
posted @ 2017-01-25 17:03 Fighting_Heart 阅读(351) 评论(0) 推荐(0) 编辑
摘要: $dp$,斜率优化。 设$dp[i][j]$表示前$i$个数字切了$j$次的最小代价。$dp[i][j]=dp[k][j-1]+p[k+1][i]$。观察状态转移方程,可以发现是一列一列推导出来的。可以初始化第一列,然后算第二列,然后算第三列。 暴力算的话时间复杂度是$O(n^3)$,需要优化。将$ 阅读全文
posted @ 2017-01-25 11:14 Fighting_Heart 阅读(311) 评论(0) 推荐(0) 编辑
摘要: $dp$,斜率优化。 第一次做斜率优化的题目,看了一些题解,自己总结一下。 这题是说有$n$个数字,可以切成任意段,每一段的费用是这一段数字的和平方加上$M$。问最小费用是多少。 设$dp[i]$为$1$至$i$分段的最小费用,那么$dp[i]=min(dp[j]+M+(sum[i]-sum[j]) 阅读全文
posted @ 2017-01-24 15:38 Fighting_Heart 阅读(244) 评论(0) 推荐(0) 编辑
摘要: 期望,$dp$。 设$dp[i]$为当前战斗力为$i$的情况下,到达目标状态的期望值。倒着推一遍就可以了。 阅读全文
posted @ 2017-01-23 11:26 Fighting_Heart 阅读(159) 评论(0) 推荐(0) 编辑
摘要: 期望,$dp$,高斯消元。 这题需要一些骚操作。首先要将问题的所有情况全部简化为起点开始向右移动(到头了从$0$再继续开始)。例如$n=4$时,将时间轴扩充为$0$ $1$ $2$ $3$ $4$ $3$ $2$ $1$。这样,$d=0$和$d=-1$的时候,就直接是一直往右走就可以了。$d=1$的 阅读全文
posted @ 2017-01-22 22:58 Fighting_Heart 阅读(172) 评论(0) 推荐(0) 编辑
摘要: 状态压缩,期望,$dp$。 设$dp[s]$表示状态$s$中的牌已经获得了需要的期望包数,$dp[0]$为答案。$dp[2^n-1]=0$,倒着推一遍就可以得到答案了。保留三位小数$WA$了,保留四位对了。 阅读全文
posted @ 2017-01-21 17:41 Fighting_Heart 阅读(155) 评论(0) 推荐(0) 编辑
摘要: 方案数,$dp$。 总的方案数有$n^m$种,符合要求的直接算不好算,可以算反面,即不符合要求的。 设$dp[i][j]$表示前$i$种等级填了$j$个位置,那么$dp[i][j]=sum(dp[i-1][j-k]*c[m-(j-k)][k])$。初始化$dp[0][0]=1$。 符合要求的方案数为 阅读全文
posted @ 2017-01-21 17:16 Fighting_Heart 阅读(181) 评论(0) 推荐(0) 编辑
摘要: 概率,$dp$。 设dp[i][j]表示第i轮结束后,编号为j的人还活着的概率。$dp[i][j]=sum(dp[i-1][j]*dp[i-1][k]*p[j][k])$,即在第$i$轮所有与$j$可能交锋的人$k$的概率之和。 $a$与$b$能在第$i$轮交锋的条件是:$a/2^{i-1}!=b/ 阅读全文
posted @ 2017-01-21 11:00 Fighting_Heart 阅读(138) 评论(0) 推荐(0) 编辑
摘要: 概率,$dp$。 $dp[i][j][0]$表示还剩下$i$个白猫,$j$个黑猫,公主出手的情况下到达目标状态的概率。 $dp[i][j][1]$表示还剩下$i$个白猫,$j$个黑猫,龙出手的情况下到达目标状态的概率。 一开始$dp[i][0][0]$均为$1$,答案为$dp[w][b][0]$。递 阅读全文
posted @ 2017-01-20 15:08 Fighting_Heart 阅读(143) 评论(0) 推荐(0) 编辑
摘要: 概率,$dp$。 人是独立的,可以先分别计算出每个人在$m$题中做出$0$题、$1$题......$m$题的概率。这个$dp$推一下就可以算出来了。 设$dp[i][j][k]$表示第$i$个人在前$j$题中,做出$k$题的概率。$dp[i][j][k]=p[i][j]*dp[i][j-1][k-1 阅读全文
posted @ 2017-01-20 11:19 Fighting_Heart 阅读(157) 评论(0) 推荐(0) 编辑
摘要: 期望,$dp$。 设$dp[i][j]$为位置$i$,$j$到达终点$R$,$C$的期望花费。 那么,$dp[i][j]=(p[i][j][1]*dp[i][j+1]+p[i][j][2]*dp[i+1][j]+2)/(1-p[i][j][0])$。 有一个坑点就是:如果某一格只能走到自己,那么这一 阅读全文
posted @ 2017-01-19 20:57 Fighting_Heart 阅读(130) 评论(0) 推荐(0) 编辑
摘要: 概率,$dp$。 设$dp[i][j]$表示有$i$个人在排队,$Tomato$排在第$j$个的情况下,到达目标状态的概率。$dp[n][m]$为答案。 当$j=1$时,$dp[i][1]=p1*dp[i][1]+p2*dp[i][i]+p4$; 当$2<=j<=k$时,$dp[i][j]=p1*d 阅读全文
posted @ 2017-01-19 16:31 Fighting_Heart 阅读(150) 评论(0) 推荐(0) 编辑
摘要: 期望,$dp$。 设$dp[i][j]$表示还剩下$i$只老虎,$j$只鹿的情况下,到达目标状态的期望概率。$dp[0][X]$均为$1$。因为人碰到鹿可以选择杀或者不杀,两种情况都算一下,取个$max$即可。 阅读全文
posted @ 2017-01-18 15:37 Fighting_Heart 阅读(155) 评论(0) 推荐(0) 编辑
摘要: 期望,$dp$。 设$dp[i][j]$表示已经发现$i$种$bug$,$j$个程序中的$bug$到达目标状态需要的期望天数。则$dp[i][j]=dp[i][j]*i*j/(n*s)+dp[i][j+1]*i*(s-j)/(n*s)+dp[i+1][j]*(n-i)*j/(n*s)+dp[i+1] 阅读全文
posted @ 2017-01-18 13:33 Fighting_Heart 阅读(138) 评论(0) 推荐(0) 编辑
摘要: 概率$dp$,矩阵优化。 设$dp[i]$为到位置$i$存活的概率,那么如果位置$i$是雷区,$dp[i]=0$,否则$dp[i]=p*dp[i-1]+(1-p)*dp[i-2]$。求出最后一个雷区位置的后一个位置的$dp$值就是答案。长度较大,可以矩阵优化加速一下。输出%$lf$不让过,%$f$过 阅读全文
posted @ 2017-01-18 11:02 Fighting_Heart 阅读(147) 评论(0) 推荐(0) 编辑
摘要: 打表。把每一种情况的和都计算出来,这个可以按位统计贡献。询问的时候输出即可。 阅读全文
posted @ 2017-01-17 18:53 Fighting_Heart 阅读(244) 评论(0) 推荐(0) 编辑
摘要: $map$,$set$。 有可能有多个相同的数字,所以开一个$map$记录一下每个数字分别有几个,当$map[x]$减小到为$0$时,将$x$从$set$中删去。 对于每一次询问,直接$lower$_$bound$找到第一个大于等于询问数字的地方,如果是$s.end()$,那么就输出上一个位置,如果 阅读全文
posted @ 2017-01-17 18:50 Fighting_Heart 阅读(212) 评论(0) 推荐(0) 编辑
摘要: 脑洞题。 如果存在两个数字是一样的,那么有解,费用为那两个相同的数字的个数。 也可能是如果存在两个球个数差为3 6 9 12 .. 3的倍数 也可以转,并且是转换成第三种颜色,并且转换次数是较多的那个球的个数。 阅读全文
posted @ 2017-01-17 18:45 Fighting_Heart 阅读(145) 评论(0) 推荐(0) 编辑
摘要: 矩阵快速幂。 0 1-> 第二个数字会变成1 0 0-> 第二个数字会变成0 1 0-> 第二个数字会变成1 1 1-> 第二个数字会变成0 根据这四个特点,就可以写转移矩阵了。 阅读全文
posted @ 2017-01-17 18:42 Fighting_Heart 阅读(119) 评论(0) 推荐(0) 编辑
上一页 1 ··· 10 11 12 13 14 15 16 17 18 ··· 69 下一页