[期望DP] UOJ#311. 【UNR #2】积劳成疾
题意
题解
我太菜了……
看官方题解吧:
#include<cstdio>
#include<algorithm>
using namespace std;
typedef long long LL;
const LL maxn=405, MOD=998244353;
int n,m,w[maxn];
LL p[maxn][maxn],f[maxn][maxn];
int main(){freopen("uoj311.in","r",stdin);freopen("uoj311.out","w",stdout);scanf("%d%d",&n,&m);for(int i=1;i<=n;i++) scanf("%d",&w[i]);for(int i=1;i<=n;i++){p[i][0]=1;for(int j=1;j<=n;j++) p[i][j]=p[i][j-1]*w[i]%MOD;}for(int i=0;i<=n;i++) f[1][i]=p[1][max(0,i-m+1)];for(int i=2;i<=n;i++)for(int j=0;j<=n;j++){f[i][j]=f[i-1][j];for(int k=1;k<=j;k++){int t=max(0,m-max(0,m-k)-max(0,m-(j-k+1)));(f[i][j]+=f[i-1][k-1]*p[i][t]%MOD*f[i][j-k]%MOD)%=MOD;}}printf("%lld\n",f[n][n]);return 0;
}
[期望DP] UOJ#311. 【UNR #2】积劳成疾相关推荐
- UOJ.311.[UNR#2]积劳成疾(DP)
UOJ 序列中的每个位置是等价的.直接令\(f[i][j]\)表示,\(i\)个数的序列,最大值不超过\(j\)的所有序列每个长为\(k\)的子区间最大值的乘积的和. 由\(j-1\)转移到\(j\) ...
- [DP] UOJ #311. 【UNR #2】积劳成疾
fi,jf_{i,j}表示长为 ii 的区间 最大值是jj 的答案 转移就枚举最左边的最大值在区间的位置 前缀和优化下就好了 好像也可以fi,j,kf_{i,j,k}表示前 ii 个,末尾 KK 个中 ...
- 【UOJ#311】【UNR #2】积劳成疾(动态规划)
[UOJ#311][UNR #2]积劳成疾(动态规划) UOJ Solution 考虑最大值分治解决问题.每次枚举最大值所在的位置,强制不能跨过最大值,左右此时不会影响,可以分开考虑. 那么设\(f[ ...
- UOJ #311「UNR #2」积劳成疾
需要锻炼$ DP$能力 UOJ #311 题意 等概率产生一个长度为$ n$且每个数在[1,n]间随机的数列 定义其价值为所有长度为$ k$的连续子数列的最大值的乘积 给定$ n,k$求所有合法数列的 ...
- luogu P4745 [CERC2017]Gambling Guide(期望DP + 最短路实现)
整理的算法模板合集: ACM模板 点我看算法全家桶系列!!! 实际上是一个全新的精炼模板整合计划 P4745 [CERC2017]Gambling Guide(期望DP + 最短路实现) Weblin ...
- [SCOI2008]奖励关(期望dp)
你正在玩你最喜欢的电子游戏,并且刚刚进入一个奖励关.在这个奖励关里,系统将依次随机抛出k次宝物,每次你都可以选择吃或者不吃(必须在抛出下一个宝物之前做出选择,且现在决定不吃的宝物以后也不能再吃). 宝 ...
- 【bzoj4318】OSU! 期望dp
题目描述 osu 是一款群众喜闻乐见的休闲软件. 我们可以把osu的规则简化与改编成以下的样子: 一共有n次操作,每次操作只有成功与失败之分,成功对应1,失败对应0,n次操作对应为1个长度为n的0 ...
- 【loj6342】跳一跳 期望dp
题目描述 一个人从 $1$ 开始向 $n$ 跳,在 $i$ 时会等概率跳到 $i,i+1,...,n$ 之一.求从 $1$ 跳到 $n$ 的期望步数. $n\le 10^7$ . 题解 期望dp傻逼题 ...
- 【高斯消元】兼 【期望dp】例题
[总览] 高斯消元基本思想是将方程式的系数和常数化为矩阵,通过将矩阵通过行变换成为阶梯状(三角形),然后从小往上逐一求解. 如:$3X_1 + 2X_2 + 1X_3 = 3$ $ ...
最新文章
- 想学习Android开发
- 详解ScheduledExecutorService的周期性执行方法
- 一个关于Remoting的简单例子
- 类 java_java类的基本结构
- cmake Can‘t find third_party/gtest
- BCG全球资产管理报告:行业增长的驱动力
- 把.Net开发环境迁移到Linux上去
- SuperMap许可驱动安装流程详解
- uploadify php完整,uploadify.php
- 如何用MATLAB编写FIR维纳滤波器,Fir维纳滤波器的Matlab仿真
- centos 7 安装sql 审核工具 inception + archer
- Monocular Depth Estimation UsingLaplacian Pyramid-Based Depth Residuals翻译
- 解决服务器挖矿漏洞 crypto
- maven下载jar包, 反复出现lastUpdated文件
- 视音频冷知识——音箱线
- 浅析基于二维轮廓线重构表面算法
- 聊聊自学,让你事半功倍的学习网站和工具
- matlab的损失函数mse,MSELoss损失函数
- JavaScript对象与JSON格式的转换
- 网络营销--网站搜索引擎友好性分析
热门文章
- java web短信验证码_在Web项目中手机短信验证码实现的全过程记录
- 根据经纬度坐标获得省市区县行政区划城市名称,自建数据库 java python php c# .net 均适用
- 什么是跨域(CORS)?怎么解决跨域(CORS)?
- Halting problem
- NetSuite 未实现汇兑损益
- 关于SQL Server numeric数据类型介绍
- 他励直流电动机的机械特性
- python字符串与十六进制互相转换
- python向上取整_python向上取整
- 深入分析零拷贝的原理,彻底掌握Netty、Kafka、RocketMQ高效率读写的秘诀