模拟测试20191107

考场黑屏欢乐多

$T1:中位数$

首先看到两个数列都满足单调不下降,显然可以二分

二分中位数然后求在两个序列里的总排名?然而是$O(mlog^{2})$的

换一个思路,考虑当前二分到$a$序列的第$i$项

显然我们可以求出他期望在$b$中哪个位置

再根据期望位置两边的数来判断是否合法就好了

 

$T2:最小值$

首先有显然的$n^{2}dp$

$$dp_{i}=\max\limits_{j=0}^{i-1}dp_{j}+f(min_{j+1,i})$$

看起来不太好优化,我们换一个思路

假设当前处理$[l,r]$之间的$dp$值,设区间最大值位置为$st$

对于$[l-1,st-1]$向$[st,r]$的$dp$转移,由于$a_{st}$为区间最小值,所以他们转移时的$f$是确定的

所以可以直接用$[l-1,st-1]$的dp最大值更新$[st,r]$的$dp$值

具体实现分一下步骤

1,找到区间最大值位置$st$

2,递归处理$[l,st-1]$

3,用$[l-1,st-1]$的$dp$最大值更新$[st,r]$的$dp$值

4,递归处理$[st+1,r]$

 

$T3:最大值$

这什么大神题啊

考 虑 一 个 随 机 变 量 x , 其 期 望 值 为:

$$E(x)=\sum\limits_{i=1}^{+\infty}P(x\geq i)(整数概率公式)$$

证明?

$$E(x)=\sum\limits_{i=1}^{+\infty}i\times P(i==x)$$

$$=\sum\limits_{i=1}^{+\infty}i\times P(x\geq i)-\sum\limits_{i=1}^{+\infty}i\times P(x\geq i+1)$$

$$=1\times P(x\geq 1)-1\times P(x\geq 2)+2\times P(x\geq 2)+...$$

$$=\sum\limits_{i=1}^{+\infty}P(x\geq i)$$

那么对于每个询问枚举所有x,我们要求的就是

$$\sum\limits_{x=1}^{+\infty}P(\min\limits_{i=l}^{r}a_{i}>=x)$$

化一下

$$P(\min\limits_{i=l}^{r}a_{i}\geq x)$$

$$=1-P(\min\limits_{i=l}^{r}a_{i}<=x-1)$$

$$=1-\prod \limits_{i=l}^{r}P(a_{i}<=x-1)$$

$$=1-\prod \limits_{i=1}^{r}1-P(a_{i}\geq x)$$

$P(a_{i}\geq x)$ 表示每个位置的最小值大于等于x的概率,等价于所有小于x的数都不出现且至少出现一个大于等于x的数

简单求一下即可

进一步的,我们考虑增量,对于枚举到的$x$和$y$,即$1-P(a_{i}\geq x)->1-P(a_{i}\geq y)$

变化量即为$\frac{1-P(a_{i}\geq x)}{1-P(a_{i}\geq y)}$

然而这样有个小问题,就是如果$1-P(a_{i}\geq x)==0$会导致出锅

继续观察发现$1-P(a_{i}\geq x)$随着$x$增大递增

按权值从大到小扫就好了

现在我们考虑如何快速统计答案

由于所有区间没有包含关系,那么我们把区间$sort$之后左右端点都是单调的

则每颗魔法师都会作用与一段区间

用线段树维护区间乘,每次权值改变就计入答案

记得最后把$1$到最小值的贡献加上

 

 

猜你喜欢

转载自www.cnblogs.com/mikufun-hzoi-cpp/p/11815785.html