2021牛客暑期多校训练营4 B.Sample Game(期望平方递推)

Posted issue是fw

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了2021牛客暑期多校训练营4 B.Sample Game(期望平方递推)相关的知识,希望对你有一定的参考价值。

LINK

定义 f [ i ] f[i] f[i]表示当前最大的数字为 i i i,游戏结束还需要的游戏次数

f [ i ] = 1 + ∑ j = i + 1 n f [ j ] ∗ p j + p i ∗ f [ i ] f[i]=1+\\sum\\limits_{j=i+1}^n f[j]*p_j+p_i*f[i] f[i]=1+j=i+1nf[j]pj+pif[i]

f [ i ] = 1 + ∑ j = i + 1 n p j ∗ f [ j ] 1 − p i f[i]=\\frac{1+\\sum\\limits_{j=i+1}^n p_j*f[j]}{1-p_i} f[i]=1pi1+j=i+1npjf[j]

g [ i ] g[i] g[i]为当前最大数字为 i i i,还能获得的期望分数

因为 E [ ( x + 1 ) 2 ] = E [ x 2 ] + 2 ∗ E [ x ] + 1 E[(x+1)^2]=E[x^2]+2*E[x]+1 E[(x+1)2]=E[x2]+2E[x]+1

g [ x ] = ∑ i = 1 x − 1 p i + ∑ i = x n ( g [ i ] + 2 ∗ f [ i ] + 1 ) ∗ p i g[x]=\\sum\\limits_{i=1}^{x-1}p_i+\\sum\\limits_{i=x}^n(g[i]+2*f[i]+1)*p_i g[x]=i=1x1pi+i=xn(g[i]+2f[i]+1)pi

g [ x ] = 1 + ∑ i = x + 1 n p i ∗ ( g [ i ] + 2 ∗ f [ i ] ) + 2 ∗ p i ∗ f i 1 − p i g[x]=\\frac{ 1+\\sum\\limits_{i=x+1}^np_i*(g[i]+2*f[i])+2*p_i*f_i}{1-p_i} g[x]=1pi1+i=x+1npi(g[i]+2f[i])+2pifi

#include <bits/stdc++.h>
using namespace std;
#define int long long
const int mod = 998244353;
const int maxn = 3e5+10;
int n,f[maxn],g[maxn],sum[maxn],p[maxn];
int quick(int x,int n)
{
	x = ( x%mod+mod ) % mod;
	int ans = 1;
	for( ; n ; n>>=1,x=x*x%mod )
		if( n&1 )	ans = ans*x%mod;
	return ans;
}
void upd(int &x,int y){ x = ( x+y )%mod; }
signed main()
{
	cin >> n;
	for(int i=1;i<=n;i++)	cin >> p[i], sum[i] = sum[i-1]+p[i];
	int inv = quick( sum[n],mod-2 );
	for(int i=1;i<=n;i++)	p[i] = p[i]*inv%mod, sum[i] = ( sum[i-1]+p[i] )%mod;
	int sf = 0, sg = 0;
	for(int i=n;i>=0;i--)
	{
		upd( f[i],1+sf );
		f[i] = f[i]*quick( 1-p[i],mod-2 )%mod;
		upd( g[i],1+sg+2*p[i]*f[i]%mod );
		g[i] = g[i]*quick( 1-p[i],mod-2 )%mod;
		upd( sf, f[i]*p[i]%mod ); upd( sg,p[i]*( g[i]+2*f[i] )%mod );
	}
	cout << ( g[0]%mod+mod )%mod;
}

以上是关于2021牛客暑期多校训练营4 B.Sample Game(期望平方递推)的主要内容,如果未能解决你的问题,请参考以下文章

2021牛客暑期多校训练营4

2021牛客暑期多校训练营 4 题解

2021牛客暑期多校训练营5 G.Greater Integer, Better LCM(搜索,子集合并)

2021牛客暑期多校训练营1 G.Game of Swapping Numbers(贪心,思维)

2021牛客暑期多校训练营4,签到题CFIJ

2021牛客暑期多校训练营2