[AGC028B]Removing Blocks 概率与期望
考虑算每一个位置在所有情况的期望值乘以全排列似乎就是答案.
那么对于 $i$,如果要由 $j$ 来贡献的话就要满足 $j$ 在 $i....j-1$ 之前先拿.
而在拿 $j$ 时,先于 $i...j-1$ 的概率就是 $\frac{1}{|j-i|+1}$
直接对所有的 $j$ 加和,然后乘以个概率即可.
code:
#include <bits/stdc++.h>
#define LL long long
#define N 100005
#define setIO(s) freopen(s".in","r",stdin)
using namespace std;
const LL mod=1000000007;
LL a[N],n,inv[N],sum[N];
LL fac(int p)
{
LL ans=1ll;
for(int i=2;i<=n;++i) ans=ans*1ll*i%mod;
return ans;
}
int main()
{
// setIO("input");
int i,j;
scanf("%d",&n);
for(i=1;i<=n;++i) scanf("%lld",&a[i]);
sum[1]=inv[1]=1ll;
for(i=2;i<=n;++i)
{
inv[i]=(mod-(mod/i)*inv[mod%i]%mod)%mod;
sum[i]=(sum[i-1]+inv[i])%mod;
}
LL ans=0ll;
for(i=1;i<=n;++i)
{
ans=(ans+a[i]*((sum[i]-sum[0]+sum[n-i+1]-sum[1]+mod)%mod)%mod)%mod;
}
printf("%lld\n",ans*fac(n)%mod);
return 0;
}
[AGC028B]Removing Blocks 概率与期望的更多相关文章
- AtCoder Grand Contest 028 B - Removing Blocks 解题报告
B - Removing Blocks Time limit : 2sec / Memory limit : 1024MB Score : 600 points ## Problem Statemen ...
- 【BZOJ-3450】Tyvj1952Easy 概率与期望DP
3450: Tyvj1952 Easy Time Limit: 10 Sec Memory Limit: 128 MBSubmit: 468 Solved: 353[Submit][Status] ...
- 【BZOJ-4008】亚瑟王 概率与期望 + DP
4008: [HNOI2015]亚瑟王 Time Limit: 20 Sec Memory Limit: 512 MBSec Special JudgeSubmit: 832 Solved: 5 ...
- BZOJ_4872_[Shoi2017]分手是祝愿_概率与期望
BZOJ_4872_[Shoi2017]分手是祝愿_概率与期望 Description Zeit und Raum trennen dich und mich. 时空将你我分开.B 君在玩一个游戏,这 ...
- 概率和期望dp
概率和期望dp 概率和期望好神啊,完全不会. 网上说概率要顺着推,期望要逆着推,然而我目前做的概率期望题正好都与此相反2333 概率: 关于概率:他非常健康 初中概率题非常恐怖.现在来思考一道题: ...
- 【CodeForces】913 F. Strongly Connected Tournament 概率和期望DP
[题目]F. Strongly Connected Tournament [题意]给定n个点(游戏者),每轮游戏进行下列操作: 1.每对游戏者i和j(i<j)进行一场游戏,有p的概率i赢j(反之 ...
- 概率dp+期望dp 题目列表(一)
表示对概率和期望还不是很清楚定义. 目前暂时只知道概率正推,期望逆推,然后概率*某个数值=期望. 为什么期望是逆推的,例如你求到某一个点的概率我们可以求得,然后我们只要运用dp从1~n每次都加下去就好 ...
- HDU 5159 Card (概率求期望)
B - Card Time Limit:5000MS Memory Limit:32768KB 64bit IO Format:%I64d & %I64u Submit Sta ...
- 概率及期望DP小结
资源分享 26 个比较概率大小的问题 数论小白都能看懂的数学期望讲解 概念 \(PS\):不需要知道太多概念,能拿来用就行了. 定义 样本(\(\omega\)):一次随机试验产生的一个结果. 样本空 ...
随机推荐
- golang使用一个二叉树来实现一个插入排序
思路不太好理解,请用断点 package main import "fmt" type tree struct { value int left, right *tree } fu ...
- git合并原则
目前实验结果为: 假设有master和branch1,用master合并branch1时(在master分支中执行git merge branch1): 1.在同一个地方,master做了修改,bra ...
- python之闭包、装饰器
一.学习Python的时候发现函数内部,还可以写函数,并且可以返回函数.觉得挺新奇的,主要是在探索装饰器(有点像Java的注解)的时候,发现这个理解还是很主要的,所以这里记录一下. 二.闭包 1)首先 ...
- 高德地图模糊搜索地址(elementUI)
首先引入AMap: 1.在index.html引入AMap <script type="text/javascript" src="http://webapi.am ...
- js防抖节流
防抖(debounce) 所谓防抖,就是指触发事件后在 n 秒内函数只能执行一次,如果在 n 秒内又触发了事件,则会重新计算函数执行时间. 防抖函数分为非立即执行版和立即执行版. 非立即执行版: 第一 ...
- 7层网络以及5种Linux IO模型以及相应IO基础
一.七层网络模型 OSI是Open System Interconnection的缩写,意为开放式系统互联.国际标准化组织(ISO)制定了OSI模型,该模型定义了不同计算机互联的标准,它是一个七层的. ...
- Nginx作为缓存服务
缓存类型 (1) 服务器缓存 服务端缓存一般使用Memcache.Redis (2)代理缓存 (3)客户端缓存 代理缓存流程图 第一步:客户端第一次向Nginx请求数据a: 第二步:当Nginx发现缓 ...
- centos 7.6 配置VNC
一.安装 1. 以root用户运行以下命令来安装vncserver; yum install tigervnc-server 2. 同样运行以下命令来安装vncviewer; yum instal ...
- Luogu P1062 数列
Luogu P1062 数列 题目说: 把所有$k$的方幂及所有有限个互不相等的$k$的方幂之和构成一个递增的序列. 这就是说,每一个$k$的方幂只能有或没有. 有为$0$,没有为$1$. 所以这些数 ...
- Python离线断网情况下安装numpy、pandas和matplotlib等常用第三方包
联网情况下在命令终端CMD中输入“pip install numpy”即可自动安装,pandas和matplotlib同理一样方法进行自动安装. 工作的电脑不能上外网,所以不能通过直接输入pip命令来 ...