链接: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】积劳成疾相关推荐

  1. UOJ.311.[UNR#2]积劳成疾(DP)

    UOJ 序列中的每个位置是等价的.直接令\(f[i][j]\)表示,\(i\)个数的序列,最大值不超过\(j\)的所有序列每个长为\(k\)的子区间最大值的乘积的和. 由\(j-1\)转移到\(j\) ...

  2. [UOJ UNR #2]积劳成疾

    来自FallDream的博客,未经允许,请勿转载,谢谢. 传送门 区间最大值的题emmmm 想到构建笛卡尔树,这样自然就想到了一种dp f[i][j]表示大小为i的笛卡尔树,根的权值是j的答案. 转移 ...

  3. 【uoj#311】[UNR #2]积劳成疾 dp

    题目描述 一个长度为 $n$ 的不确定序列,每个数在 $[1,n]$ 之间.给出 $m$ ,求所有序列的 $\prod_{i=1}^{n-m+1}w[\text{Max}_{j=i}^{j+m-1}a ...

  4. Noip前的大抱佛脚----赛前任务

    赛前任务 tags:任务清单 前言 现在xzy太弱了,而且他最近越来越弱了,天天被爆踩,天天被爆踩 题单不会在作业部落发布,所以可(yi)能(ding)会不及时更新 省选前的练习莫名其妙地成为了Noi ...

  5. 【UOJ#311】【UNR #2】积劳成疾(动态规划)

    [UOJ#311][UNR #2]积劳成疾(动态规划) UOJ Solution 考虑最大值分治解决问题.每次枚举最大值所在的位置,强制不能跨过最大值,左右此时不会影响,可以分开考虑. 那么设\(f[ ...

  6. [DP] 【UNR #2】积劳成疾

    fi,jfi,jf_{i,j} 表示长度为 iii 最大值为 j" role="presentation">jjj 的序列的答案 枚举最大值的位置转移就好了 #in ...

  7. [DP] UOJ #311. 【UNR #2】积劳成疾

    fi,jf_{i,j}表示长为 ii 的区间 最大值是jj 的答案 转移就枚举最左边的最大值在区间的位置 前缀和优化下就好了 好像也可以fi,j,kf_{i,j,k}表示前 ii 个,末尾 KK 个中 ...

  8. UOJ#311. 【UNR #2】积劳成疾

    https://winniechen.cn/?p=152 转载于:https://www.cnblogs.com/Winniechen/p/9306212.html

  9. uoj311 【UNR #2】积劳成疾

    传送门:http://uoj.ac/problem/311 [题解] 这题的期望dp好神奇啊(可能是我太菜了) 由于每个位置都完全一样,所以我们设$f_{i,j}$表示审了连续$i$个位置,最大值不超 ...

  10. [期望DP] UOJ#311. 【UNR #2】积劳成疾

    题意 题解 我太菜了-- 看官方题解吧: #include<cstdio> #include<algorithm> using namespace std; typedef l ...

最新文章

  1. ipython官网_IPython Notebook快速搭建
  2. AT4437-[AGC028C]Min Cost Cycle【结论,堆】
  3. android支付平台,android移动支付
  4. python读取csv时keyerror_python – 读取csv文件并传输到数组的KeyError
  5. Python刷题-7
  6. kali2020进入单模式_出租车使用“滴滴”平台 司机希望恢复抢单模式 滴滴出行有回应...
  7. 重现Oracle数据库Hang住的情况
  8. ESP32开发 0.windows Vscode开发环境搭建,基于esp-idf-V4.2 | Cmake | Vscode插件
  9. Java 7中的TransferQueue
  10. ASP.NET运行模式
  11. 深入浅出了解OCR识别票据原理(Applying OCR Technology for Receipt Recognition)
  12. Pytorch-IMDB电影评论情感分析
  13. IDEA报错:Lombok Requires Annotation Processing, Annotation processing seems to be disabled
  14. C++ 线段树,树状数组
  15. 信息安全导论 实验一 古典密码学
  16. Linux上安装NetCat
  17. 什么是recovery time和removal time?
  18. GitChat·前端 | 从软件工程角度看大前端技术栈
  19. 前端UI大全(针对后台管理系统)
  20. python批量循环图片识别_批量识别图中文字自动命名,让你1秒找到骚图

热门文章

  1. YDOOK: Sanic: Python request post请求 上传照片或文件 详细具体步骤 亲测可用!
  2. AcWing-C/C++语法基础【合集2】
  3. 如何在电脑上运行知乎?
  4. 续2:股票交易一点感悟和程序化交易实战
  5. WIN7卸载IE11回复IE8的方法
  6. 数据类型_function_函数概论
  7. Failed to transform file 'xxx' to match attributes 的解决办法
  8. Android模似器硬件加速
  9. 文献管理软件——Endnote和Noteexpress选择哪个较为合适?
  10. sparknbsp;项目启动的时候报出如下错误