首页 > 其他分享 >CF708E

CF708E

时间:2023-11-23 16:44:20浏览次数:31  
标签:联通 CF708E limits sum times 考虑 dbinom

传送门

description

给定 \(n,m,P,k\)。一个 \(n+2\) 行 \(m\) 列的网格图第 \(2\) 至 \(n+1\) 行每秒每行左右两端的方格都有 \(P\) 的概率消失。求 \(k\) 秒后第一行和最后一行联通(上下左右四个格子联通)的概率。

  • \(n,m\leq 1.5\times10^5\)

  • \(k\leq 10^5\)

solution

由于每行都是一样的,所以可以首先求出 \(c_{l,r}\) 表示 \(k\) 秒后恰剩下 \([l,r]\) 这一段没有消失的概率。根据消失的规则,有表达式:

  • \(c_{l,r}=\dbinom{k}{l-1}P^{l-1}(1-P)^{k-(l-1)}\times \dbinom{k}{m-r}P^{m-r}(1-P)^{k-(m-r)}\)

设 \(f_{t,l,r}\) 表示前 \(t\) 行(行号从 0 开始)联通并且第 \(t\) 行还剩 \([l,r]\) 没有删除的概率。设 \(S_t=\sum\limits_{l=1}^m\sum\limits_{r=l}^m f_{t,l,r}\)。考虑上一行填了哪一段,则有转移:

  • \(f_{t,l,r}=c_{l,r}\times(S_{t-1}-\sum\limits_{i=1}^{l-1}\sum\limits_{j=i}^{l-1} f_{t-1,i,j}-\sum\limits_{i=r+1}^m\sum\limits_{j=i}^mf_{t-1,i,j})\)

注意,因为两线段相交的条件比较复杂,所以容斥一下,考虑两线段不相交的条件,进而得出上式。

直接转移的时间复杂度是 \(O(nm^4)\)。考虑优化这个 dp。

状态数量已经到达三次方级别,不能接受,所以要先把状态变成两维。

我们设 \(f_{t,r}=\sum\limits_{l=1}^r f_{t,l,r}\) 以及 \(g_{t,l}=\sum\limits_{r=l}^m f_{t,l,r}\) 即原 dp 状态确定左端点或右端点后的后缀和或前缀和。则此时 \(S_{t}=\sum\limits_{r=1}^m f_{t,r}=\sum\limits_{l=1}^m g_{t,l}\)。

以 \(f_{t,r}\) 为例说明如何转移,\(g_{t,l}\) 的转移同理。

考虑把 \(f_{t,r}\) 展开得:

  • \(f_{t,r}=\sum\limits_{l=1}^r f_{t,l,r}\)

考虑在知道 \(f_{t-1}\) 和 \(g_{t-1}\) 得情况下计算 \(f_{t,l,r}\):

  • \(f_{t,r}=\sum\limits_{l=1}^r c_{l,r}\times (S_{t-1}-f_{t-1,l-1}-g_{t-1,r+1})\)

单独考虑每一项:

  • \(f_{t,r}=(S_{t-1}-g_{t-1,r+1})\sum\limits_{l=1}^r c_{l,r}-\sum\limits_{l=1}^r c_{l,r}f_{t-1,l-1}\)

后一项直接不好处理,但是我们可以根据最开始推的式子把 \(c_{l,r}\) 拆成分别和 \(l,r\) 相关的两部分,分别是 \(L(l)=\dbinom{k}{l-1}P^{l-1}(1-P)^{k-(l-1)}\) 和 \(R(r)=\dbinom{k}{m-r}P^{m-r}(1-P)^{k-(m-r)}\)。

则式子可化为:

  • \(f_{t,r}=(S_{t-1}-g_{t-1,r+1})\times R(r)\sum\limits_{l=1}^r L(l)-R(r)\sum\limits_{l=1}^r L(l)f_{t-1,l-1}\)

这样每部分都可以前缀和优化了。

时间复杂度 \(O(nm)\)。

code

Submission #233808497 - Codeforces

标签:联通,CF708E,limits,sum,times,考虑,dbinom
From: https://www.cnblogs.com/FreshOrange/p/17851929.html

相关文章

  • 「解题报告」CF708E Student's Camp
    感觉这篇题解的做法很强啊,贺一下。连通:考虑将每一种情况对应一条路径。钦定这条路径为能往下则往下,不能往下就向左或向右走到第一个能往下的位置然后往下。这样只考虑每一种路径,再对应的计算路径相应的情况的概率和。这个是容易计算的,而路径需要记录的状态少了一维,于是就可以......
  • CF708E Student's Camp
    Student'sCampCodeforces708ELuoguCF708E题面翻译有一个\((n+2)\timesm\)的网格。除了第一行和最后一行,其他每一行每一天最左边和最右边的格子都有\(p\)的概......