日韩性视频-久久久蜜桃-www中文字幕-在线中文字幕av-亚洲欧美一区二区三区四区-撸久久-香蕉视频一区-久久无码精品丰满人妻-国产高潮av-激情福利社-日韩av网址大全-国产精品久久999-日本五十路在线-性欧美在线-久久99精品波多结衣一区-男女午夜免费视频-黑人极品ⅴideos精品欧美棵-人人妻人人澡人人爽精品欧美一区-日韩一区在线看-欧美a级在线免费观看

歡迎訪問 生活随笔!

生活随笔

當前位置: 首頁 > 编程资源 > 编程问答 >内容正文

编程问答

bzoj 5340: [Ctsc2018]假面

發布時間:2025/5/22 编程问答 23 豆豆
生活随笔 收集整理的這篇文章主要介紹了 bzoj 5340: [Ctsc2018]假面 小編覺得挺不錯的,現在分享給大家,幫大家做個參考.

Description

題面

Solution

生命值范圍比較小,首先維護每一個人在每個血量的概率,從而算出生存的概率,設為 \(a[i]\)
詢問時,只需要考慮生存的人數,可以 \(DP\)
\(g[i][j]\) 表示前 \(i\) 個人活了 \(j\) 個的概率
\(g[i][j]=g[i-1][j-1]*a[i]+g[i-1][j]*(1-a[i])\)

那么考慮每一個人時,我們對其他人做這個 \(DP\) 就行了,可以做 \(O(C*n^3)\)
實際上這是個生成函數 \((a[i]*x+1-a[i])\) ,最終求出的是每一個人的乘積,除掉 \(i\) 這個人的就是我們暴力求出來的 \(DP\) 數組

這樣的話是可逆的,我們減去 \((1-a[i])\) 的項,剩下的就都是 \(a[i]\) 的項了,逆推一下即可

#include<bits/stdc++.h> using namespace std; template<class T>void gi(T &x){int f;char c;for(f=1,c=getchar();c<'0'||c>'9';c=getchar())if(c=='-')f=-1;for(x=0;c<='9'&&c>='0';c=getchar())x=x*10+(c&15);x*=f; } const int N=205,M=1005,mod=998244353; inline int qm(int x,int k){int sum=1;while(k){if(k&1)sum=1ll*sum*x%mod;x=1ll*x*x%mod;k>>=1;}return sum; } int f[N][M],n,m[N],Q,op,x,p,q,h[N],a[N],tot,c[N],g[N][N],inv[N],res[N]; inline void Modify(){gi(x);gi(p);gi(q);p=1ll*p*qm(q,mod-2)%mod;q=(1-p+mod)%mod;h[0]=(f[x][0]+1ll*f[x][1]*p)%mod;for(int i=m[x];i>=1;i--)h[i]=(1ll*f[x][i+1]*p+1ll*f[x][i]*q)%mod;for(int i=m[x];i>=0;i--)f[x][i]=h[i],h[i]=0; } inline void solve(){gi(tot);for(int i=1;i<=tot;i++){gi(x);a[i]=(1-f[x][0]+mod)%mod;}memset(g,0,sizeof(g));g[0][0]=1;for(int i=1;i<=tot;i++){g[i][0]=g[i-1][0]*(1-a[i]+mod)%mod;for(int j=0;j<=i;j++)g[i][j]=(1ll*g[i-1][j-1]*a[i]+1ll*g[i-1][j]*(1-a[i]+mod))%mod;}for(int i=1;i<=tot;i++){int I=qm(a[i],mod-2),ans=0;for(int j=1;j<=tot;j++)h[j]=g[tot][j];for(int j=tot;j>=1;j--){ans=(ans+1ll*I*h[j]%mod*inv[j])%mod;h[j-1]=(h[j-1]-1ll*h[j]*(1-a[i]+mod)%mod*I)%mod;h[j]=0;}if(ans<0)ans+=mod;ans=1ll*ans*a[i]%mod;printf("%d ",ans);}puts(""); } int main(){freopen("pp.in","r",stdin);freopen("pp.out","w",stdout);for(int i=1;i<N;i++)inv[i]=qm(i,mod-2);cin>>n;for(int i=1;i<=n;i++)gi(m[i]),f[i][m[i]]=1;cin>>Q;while(Q--){gi(op);if(op==0)Modify();else solve();}for(int i=1;i<=n;i++){int ans=0;for(int j=1;j<=m[i];j++)ans=(ans+1ll*f[i][j]*j)%mod;printf("%d ",ans);}return 0; }

轉載于:https://www.cnblogs.com/Yuzao/p/9058367.html

總結

以上是生活随笔為你收集整理的bzoj 5340: [Ctsc2018]假面的全部內容,希望文章能夠幫你解決所遇到的問題。

如果覺得生活随笔網站內容還不錯,歡迎將生活随笔推薦給好友。

主站蜘蛛池模板: www.久久99| 一区二区在线观看av | 亚洲午夜一区二区三区 | 成人精品视频99在线观看免费 | 精品中文字幕在线观看 | 三区在线观看 | 欧美图片一区二区三区 | 五月婷婷丁香久久 | 琪琪电影午夜理论片八戒八戒 | 99久久99久久精品国产片果冻 | 日本国产精品视频 | 麻豆免费在线观看视频 | 欧美伦理在线观看 | 日韩三级欧美 | 国产8区 | 日日干夜夜撸 | 91看片在线播放 | 国产欧美久久久精品免费 | 国产成人精品一区二区三区 | 免费h片网站 | 欧美一区二区在线视频观看 | 黄色在线观看视频网站 | 高跟鞋丝袜猛烈xxxx | 欧美香蕉在线 | 成年人视屏 | 国产亚洲一区二区不卡 | 无码精品一区二区三区在线 | 16一17女人毛片 | 午夜做爰xxxⅹ性高湖视频美国 | 精品国产污污免费网站入口 | 国精产品一区一区三区免费视频 | 亚洲女同在线 | 少妇一级淫片aaaaaaa | 国产午夜精品在线观看 | 日本电影大尺度免费观看 | 国产一级片免费视频 | a√国产 | 国产成人91精品 | 小向美奈子在线观看 | 亚洲天堂一区二区三区 | 日韩国产一区二区三区 | 成人免费黄色小视频 | 一区不卡在线观看 | 亚洲我不卡 | 久久久国产精品x99av | 草久av| 黄色片大全 | 亚洲国产精品久久人人爱 | 黄色xxxx| 成人中文视频 | 国产少妇在线 | 深夜免费在线视频 | 国产成人精品免高潮费视频 | 午夜在线视频播放 | 国产18毛片 | 午夜电影福利网 | www,四虎 | 久久久精品区 | 无码无遮挡又大又爽又黄的视频 | av漫画在线观看 | 久久高清毛片 | 在线观看xxxx | 一级久久久久久久 | 在线观看日本视频 | 欧美野外猛男的大粗鳮 | 被绑在床强摁做开腿呻吟 | 欧美激情精品久久久久 | 亚洲综合婷婷久久 | 成人h片 | 精品777 | 精品人妻一区二区三区日产乱码卜 | 夜夜夜夜夜操 | 成人免费在线小视频 | 亚洲综合五区 | 欧美八区| 日本老少交| 一级片免费视频 | 久久久久亚洲精品 | 麻豆蜜桃av| 99999视频| 亚洲aⅴ在线 | 日韩亚洲在线观看 | √天堂8资源中文在线 | 黄色av网址大全 | 东京久久 | 69sex久久精品国产麻豆 | 五月花成人网 | www国产在线观看 | 葵司免费一区二区三区四区五区 | 精品产国自在拍 | 色日韩 | 热热色国产| 超碰免费在 | 欧美v日韩 | 非洲黑妞xxxxhd精品 | 精品国产乱码久久久久久久 | 韩国中文三级hd字幕 | 相亲对象是问题学生在线观看 | 国产嫩草影院久久久久 |