脚本宝典收集整理的这篇文章主要介绍了爬树的甲壳虫(2022蓝桥杯),脚本宝典觉得挺不错的,现在分享给大家,也给大家做个参考。
当时比赛的时候期望不是多熟练 现在看来这个题还是多简单的
设E(k)表示当前在第k层 到n层期望的时间
当前有两种情况 要么到k+1层 要么回到0层
到k+1层: (1-p)× E(k+1) + 1
回到0层: p × E(0)
E(k)=(1-p)× E(k+1) + 1 + p × E(0)
很明显的一个线性递推式 最后一定是关于E(0)的一个式子
我们分别统计 1前面的系数 和右边E(0) 前面的系数就好
#include<bits/stdc++.h>
using namespace std;
#define lowbit(x) x&(-x)
#define ll long long
const int mod=998244353;
const int maxn=1e5+5;
int n;
ll fast_mi(ll aa,ll bb){
ll res=1;
while(bb){
if(bb&1)res=res*aa%mod;
bb>>=1;
aa=aa*aa%mod;
}
return res;
}
ll p[maxn],pre[maxn];
ll sum1,sum0;
int main(){
cin>>n;
pre[0]=1;
for(int i=1;i<=n;i++){
int a,b;
cin>>a>>b;
p[i]=a*fast_mi(b,mod-2)%mod;
pre[i]=pre[i-1]*(1-p[i]+mod)%mod;
}
for(int i=0;i<=n-1;i++){
sum1=(sum1+pre[i])%mod;
sum0=(sum0+p[i+1]*pre[i]%mod)%mod;
}
cout<<sum1*fast_mi(1-sum0+mod,mod-2)%mod<<endl;
return 0;
}
以上是脚本宝典为你收集整理的爬树的甲壳虫(2022蓝桥杯)全部内容,希望文章能够帮你解决爬树的甲壳虫(2022蓝桥杯)所遇到的问题。
本图文内容来源于网友网络收集整理提供,作为学习参考使用,版权属于原作者。
如您有任何意见或建议可联系处理。小编QQ:384754419,请注明来意。