大佬(概率期望DP)

首先根据数据范围,可以判断基本上是n^2的复杂度

通过分析我们发现每一次都可以从m个数中任意选,既然任意选,那么此时的概率的分母就是不变的,然而题中涉及的是某一段的最大值,所以我们按套路假设

f[i][j]表示第i天,当前最大值为j的方案数,也可以是概率,

我们又发现天数是以k为一个单位的,

那么我们i从1-k枚举即可,

f[i][j]=f[i-1][j]*j(表示前一道题已经是最大值,这一道题从1-j选择)

f[i][j]=f[i-1][1---(j-1)]*1(表示当前选j,可以用前缀和维护)

这里是方案数,因为以k天为单位,所以

统计出每个f[k][i]*wt[i]*pow(pow(m,k),mod-2)的和

显然这就是k天的劳累度的期望(也可以理解为每k天的平均花费是这些)

那么求n天我们只需要看n天中有多少k,答案*(n-k+1)%mod

(顺便一提:WA95 是因为数据好像有k>n的情况,puts(0)即可,虽然数据范围说没有........)

以后做期望一定要努力推,其实想懂后真的不难

其实关于期望的题,也可以用概率或方案数去做,这题就是个假期望......

 

 1 #include<iostream>
 2 #include<cstdio>
 3 #include<cstring>
 4 #include<algorithm>
 5 #include<cmath>
 6 #include<string>
 7 #include<vector>
 8 #define int long long 
 9 #define MAXN 10001
10 using namespace std;
11 int f[MAXN][MAXN];
12 int wt[MAXN];
13 int n,m,k;
14 int mod=1000000007;
15 int pow(int x,int y)
16 {
17     int aa=1;
18     while(y>0)
19     {
20          if(y&1)
21          {
22             aa=aa*x%mod; 
23          }
24          x=x*x%mod;
25          y>>=1;
26     } 
27     return aa%mod;
28 }
29 int sum[MAXN][MAXN];
30 signed main()
31 {
32     scanf("%lld%lld%lld",&n,&m,&k);
33     if(k>n)
34     {
35         printf("0\n");
36         return 0;
37     }
38     for(int i=1;i<=m;++i)
39     {
40         scanf("%lld",&wt[i]);
41     }
42     for(int i=1;i<=m;++i)
43     {
44         f[1][i]=1;
45         sum[1][i]=sum[1][i-1]+1;
46     }
47     for(int i=2;i<=k;++i)
48     {
49         for(int j=1;j<=m;++j)
50         {
51               f[i][j]=(f[i][j]+f[i-1][j]*j)%mod;
52               f[i][j]=(f[i][j]+sum[i-1][j-1])%mod;
53         }
54         for(int j=1;j<=m;++j)
55         {
56               sum[i][j]=(sum[i][j-1]+f[i][j])%mod;
57         }
58     }
59     int ans=0;
60     for(int i=1;i<=m;++i)
61     {
62          ans=(ans+f[k][i]*wt[i]%mod)%mod;
63     }
64     printf("%lld\n",ans*pow(pow(m,k),mod-2)%mod*(n-k+1)%mod);
65 }
View Code

 

转载于:https://www.cnblogs.com/Wwb123/p/11263812.html

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mzph.cn/news/448092.shtml

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

vue 父组件 调用 子组件的方法

前些天发现了一个巨牛的人工智能学习网站&#xff0c;通俗易懂&#xff0c;风趣幽默&#xff0c;忍不住分享一下给大家。点击跳转到教程。 我们都知道通过$ref可以获取到某个DOM&#xff0c;但是它也可以用来获取子组件的实例&#xff0c;调用子组件的方法 例&#xff1a; 子…

新手开车13招技巧

开车是一个靠经验积累技术的过程&#xff0c;新手们往往会在开车时遇到很多问题&#xff0c;我们用本篇文章和新手讲述开车的各种技巧&#xff0c;希望每个新手都能从中受益。第1招技巧&#xff1a;上车前要先看车  上车前绕车转一圈&#xff0c;看车的外况、轮胎、车底下有没…

高效的数据压缩编码方式 Protobuf

高效的数据压缩编码方式 Protobuf github地址 目录 ProtocolBuffers 是什么为什么要发明 ProtocolBuffersproto3 定义 Message 分配字段编号保留字段默认字段规则各个语言标量类型对应关系枚举枚举中的保留值允许嵌套枚举不兼容性更新 Message未知字段Map 类型JsonMapping p…

解决 VUE前端项目报错:RangeError: Maximum call stack size exceeded

前些天发现了一个巨牛的人工智能学习网站&#xff0c;通俗易懂&#xff0c;风趣幽默&#xff0c;忍不住分享一下给大家。点击跳转到教程。 1. 我点击菜单按钮报错&#xff1a; RangeError: Maximum call stack size exceeded 2. 原因&#xff1a;参数传递有问题或者方法调用有…

新手必须掌握的学车技巧-上坡起步

我们知道&#xff0c;做什么事情都是万事开头难&#xff0c;新手们在学车方面更能体会到这一点&#xff0c;正确掌握学车技巧对于新手来说是非常重要的事情&#xff0c;今天&#xff0c;平安学车网&#xff08;www.paxcw.com&#xff09;就会大家探讨一下我们学车时必须掌握的是…

高效的序列化/反序列化数据方式 Protobuf

高效的序列化/反序列化数据方式 Protobuf github地址 目录 protocolBuffers 序列化 Int32StringMapslice序列化小结 protocolBuffers 反序列化 Int32StringMapslice序列化小结 序列化/反序列化性能最后 protocolBuffers序列化 上篇文章中其实已经讲过了 encode 的过程&…

如何配置一个Oracle服务

1、网络服务名&#xff1a;即填写OracleTNS的值&#xff0c;如OracleTNSorcl_192.168.1.125&#xff0c;填写orcl_192.168.1.1252、主机名&#xff1a;192.168.1.1253、服务名&#xff1a;orcl4、测试成功即可。 转载于:https://www.cnblogs.com/dengshiwei/p/4258719.html

解决 VUE前端项目报错: Uncaught ReferenceError : initPage is not defined (initPage 方法是有的,依旧报错找不到)

前些天发现了一个巨牛的人工智能学习网站&#xff0c;通俗易懂&#xff0c;风趣幽默&#xff0c;忍不住分享一下给大家。点击跳转到教程。 1. 明明代码中定义了 initPage 这个方法&#xff0c;&#xff0c;却一直报找不到这个方法&#xff1a; Uncaught ReferenceError: init…

掌握新手学车技巧对于新手来说是非常重要的

刚开始学车的时候对于新手来说很多操作不知道从哪里下手&#xff0c;这个时候&#xff0c;如果按照相关的学车技巧来学习的话&#xff0c;对于新手来说是非常有好处的。下面我们就来学习一下让新手们可以快速进入开车状态的学车技巧吧&#xff01;基本上驾校的教练都会教学员把…

iView学习笔记(三):表格搜索,过滤及隐藏列操作

iView学习笔记(三)&#xff1a;表格搜索&#xff0c;过滤及隐藏某列操作 1.后端准备工作 环境说明 python版本&#xff1a;3.6.6 Django版本&#xff1a;1.11.8 数据库&#xff1a;MariaDB 5.5.60 新建Django项目&#xff0c;在项目中新建app&#xff0c;配置好数据库 api_test…

Jenkins自动编译库并上传服务器

Jenkins自动编译库并上传服务器 github地址 首先添加 git 地址&#xff1a; 再添加定时构建&#xff0c;每天夜里构建一次&#xff1a; 执行 shell 脚本进行构建 cd networklayerecho "build json x86" cmake -S . -B cmake-build-release -DCMAKE_BUILD_TYPERele…

解决:The “data“ option should be a function that returns a per-instance value in component definitions

前些天发现了一个巨牛的人工智能学习网站&#xff0c;通俗易懂&#xff0c;风趣幽默&#xff0c;忍不住分享一下给大家。点击跳转到教程。 1. 只是想定义一个变量&#xff0c;方便页面上调用 。 报错&#xff1a; The "data" option should be a function that re…

科目三考试里面的会车,调头,靠边停车通过标准

科目三会车&#xff1a;减速靠道路的右侧边缘线行驶&#xff0c;速度要减到20km/h以下&#xff0c;靠右以不压右侧边缘线为基准尽量靠右。会车结束指令发出后向左打方向回到道路中央。考点&#xff1a;1.速度要降到20km/h&#xff0c;有时考官故意刁难&#xff0c;会在直线行驶…

Esxi直通板载Sata

Esxi安装好后&#xff0c;打开SSH。 解决方法如下&#xff1a; shell下执行&#xff1a; lspci -v | grep "Class 0106"-B 1&#xff0c;查看是否有如下显示&#xff1a;0000:00:1f.2 SATAcontroller Mass storage controller: Intel Corporation Lynx Point AHCICon…

gdb 调试 TuMediaService

gdb 调试 TuMediaService github地址 起因 首先需要有 armgdb 环境运行 ./armgdb ./TuMediaService 进入 gdb 模式b hi3531_trcod_interface.cc:98 打断点r 运行程序print this->vdec_config_path_ 打印关键值 在这里我们关注的值已经被修改&#xff0c;由于程序中没有刻…

jackson 的注解:@JsonProperty、@JsonIgnore、@JsonFormat 用法说明

前些天发现了一个巨牛的人工智能学习网站&#xff0c;通俗易懂&#xff0c;风趣幽默&#xff0c;忍不住分享一下给大家。点击跳转到教程。 1. 导包&#xff1a; <dependency><groupId>com.fasterxml.jackson.core</groupId><artifactId>jackson-data…

科目三-变更车道,直线行驶和超车的考试标准

直线行驶&#xff1a;这是唯一一个可以提前操作的项目&#xff0c;当听到“下一项考试为直线行驶......”的指令时&#xff0c;可以立即把车身摆正。放在道路的正中间&#xff0c;并踩油门&#xff0c;把速度提至30----50km/h&#xff0c;最好保持在35---40km/h&#xff0c;因为…

PyQt安装和环境配置

PyQt安装和环境配置 github地址 首先安装Pycharm 新建一个空的 python 工程&#xff0c;找到 setting 安装第三方模块 PyQT5 , 点加号&#xff0c;先安 PyQT5 , 再安装 pyqt5-tools &#xff0c;后面包含 qtdesinger 以上模块都安完&#xff0c;设置扩展工具的参数找到 sett…

HZOJ 大佬(kat)

及其水水水的假期望&#xff08;然而我已经被期望吓怕了……&#xff09;。 数据范围及其沙雕导致丢掉5分…… 因为其实每天的期望是一样的&#xff0c;考虑分开。 f[i][j]表示做k道题&#xff0c;难度最大为j的概率。 则f[i][j](f[i-1][j])*(j-1)*temq[j]*tem;q为前缀和&#…

F12 界面:请求响应内容 Preview 和 Response 不一致、接口返回数据和 jsp 解析到的内容不一致

前些天发现了一个巨牛的人工智能学习网站&#xff0c;通俗易懂&#xff0c;风趣幽默&#xff0c;忍不住分享一下给大家。点击跳转到教程。 1. 情况描述&#xff1a; 我有一个接口只是简单的查询列表数据并返回给前端作一个表格展示。 接口返回的 userId 数据为&#xff1a;…