A. 【UNR #2】积劳成疾
链接:http://uoj.ac/contest/40/problem/311
题解:
一道很好的期望题吧
用dp的老思路,枚举最大值将序列分割
想到这个就很简单了
状态f[i][j]表示前i个,最大值为j
f[i][j]=sigma(sigmaf[k][j-1]*sigmaf[i-k][j]*j^贡献次数)
然后显然这个可以前缀和优化一下
写代码莫名其妙写了+=mo
代码:
#include <bits/stdc++.h> using namespace std; #define N 500 #define mo 998244353 #define ll long long ll dp[N][N],js[N],w[N],n,m; int main() {freopen("noip.in","r",stdin);freopen("noip.out","w",stdout);std::ios::sync_with_stdio(false);cin>>n>>m;for (ll i=1;i<=n;i++) cin>>w[i];for (ll i=0;i<=n;i++) dp[0][i]=1;for (ll i=1;i<=n;i++){js[0]=1;for (ll j=1;j<=n;j++) js[j]=(js[j-1]*w[i])%mo; for (ll j=1;j<=n;j++){dp[j][i]=dp[j][i-1];for (ll k=1;k<=j;k++)dp[j][i]=(dp[j][i]+(dp[k-1][i-1]*dp[j-k][i])%mo*js[max(0ll,min(k,m)-max(k+m-j-1,0ll))])%mo;}}cout<<dp[n][n]%mo;return 0; }
转载于:https://www.cnblogs.com/yinwuxiao/p/8727713.html
A. 【UNR #2】积劳成疾相关推荐
- UOJ.311.[UNR#2]积劳成疾(DP)
UOJ 序列中的每个位置是等价的.直接令\(f[i][j]\)表示,\(i\)个数的序列,最大值不超过\(j\)的所有序列每个长为\(k\)的子区间最大值的乘积的和. 由\(j-1\)转移到\(j\) ...
- [UOJ UNR #2]积劳成疾
来自FallDream的博客,未经允许,请勿转载,谢谢. 传送门 区间最大值的题emmmm 想到构建笛卡尔树,这样自然就想到了一种dp f[i][j]表示大小为i的笛卡尔树,根的权值是j的答案. 转移 ...
- 【uoj#311】[UNR #2]积劳成疾 dp
题目描述 一个长度为 $n$ 的不确定序列,每个数在 $[1,n]$ 之间.给出 $m$ ,求所有序列的 $\prod_{i=1}^{n-m+1}w[\text{Max}_{j=i}^{j+m-1}a ...
- Noip前的大抱佛脚----赛前任务
赛前任务 tags:任务清单 前言 现在xzy太弱了,而且他最近越来越弱了,天天被爆踩,天天被爆踩 题单不会在作业部落发布,所以可(yi)能(ding)会不及时更新 省选前的练习莫名其妙地成为了Noi ...
- 【UOJ#311】【UNR #2】积劳成疾(动态规划)
[UOJ#311][UNR #2]积劳成疾(动态规划) UOJ Solution 考虑最大值分治解决问题.每次枚举最大值所在的位置,强制不能跨过最大值,左右此时不会影响,可以分开考虑. 那么设\(f[ ...
- [DP] 【UNR #2】积劳成疾
fi,jfi,jf_{i,j} 表示长度为 iii 最大值为 j" role="presentation">jjj 的序列的答案 枚举最大值的位置转移就好了 #in ...
- [DP] UOJ #311. 【UNR #2】积劳成疾
fi,jf_{i,j}表示长为 ii 的区间 最大值是jj 的答案 转移就枚举最左边的最大值在区间的位置 前缀和优化下就好了 好像也可以fi,j,kf_{i,j,k}表示前 ii 个,末尾 KK 个中 ...
- UOJ#311. 【UNR #2】积劳成疾
https://winniechen.cn/?p=152 转载于:https://www.cnblogs.com/Winniechen/p/9306212.html
- uoj311 【UNR #2】积劳成疾
传送门:http://uoj.ac/problem/311 [题解] 这题的期望dp好神奇啊(可能是我太菜了) 由于每个位置都完全一样,所以我们设$f_{i,j}$表示审了连续$i$个位置,最大值不超 ...
- [期望DP] UOJ#311. 【UNR #2】积劳成疾
题意 题解 我太菜了-- 看官方题解吧: #include<cstdio> #include<algorithm> using namespace std; typedef l ...
最新文章
- ipython官网_IPython Notebook快速搭建
- AT4437-[AGC028C]Min Cost Cycle【结论,堆】
- android支付平台,android移动支付
- python读取csv时keyerror_python – 读取csv文件并传输到数组的KeyError
- Python刷题-7
- kali2020进入单模式_出租车使用“滴滴”平台 司机希望恢复抢单模式 滴滴出行有回应...
- 重现Oracle数据库Hang住的情况
- ESP32开发 0.windows Vscode开发环境搭建,基于esp-idf-V4.2 | Cmake | Vscode插件
- Java 7中的TransferQueue
- ASP.NET运行模式
- 深入浅出了解OCR识别票据原理(Applying OCR Technology for Receipt Recognition)
- Pytorch-IMDB电影评论情感分析
- IDEA报错:Lombok Requires Annotation Processing, Annotation processing seems to be disabled
- C++ 线段树,树状数组
- 信息安全导论 实验一 古典密码学
- Linux上安装NetCat
- 什么是recovery time和removal time?
- GitChat·前端 | 从软件工程角度看大前端技术栈
- 前端UI大全(针对后台管理系统)
- python批量循环图片识别_批量识别图中文字自动命名,让你1秒找到骚图
热门文章
- YDOOK: Sanic: Python request post请求 上传照片或文件 详细具体步骤 亲测可用!
- AcWing-C/C++语法基础【合集2】
- 如何在电脑上运行知乎?
- 续2:股票交易一点感悟和程序化交易实战
- WIN7卸载IE11回复IE8的方法
- 数据类型_function_函数概论
- Failed to transform file 'xxx' to match attributes 的解决办法
- Android模似器硬件加速
- 文献管理软件——Endnote和Noteexpress选择哪个较为合适?
- sparknbsp;项目启动的时候报出如下错误