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

歡迎訪問 生活随笔!

生活随笔

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

编程问答

JZOJ 4786. 【NOIP2016提高A组模拟9.17】小a的强迫症

發布時間:2025/3/15 编程问答 18 豆豆
生活随笔 收集整理的這篇文章主要介紹了 JZOJ 4786. 【NOIP2016提高A组模拟9.17】小a的强迫症 小編覺得挺不錯的,現在分享給大家,幫大家做個參考.

Description

Input

Sample Input

3
2 2 1

Output

Sample Output

3

樣例解釋:

Data Constraint

Solution

  • 首先,我們設之前放了 Sum 個珠子,當前要放 Ai 個珠子。

  • 那么這 Ai 個珠子中要有一個放在那 Sum 個珠子后面。

  • 于是就有 Ai?1 個珠子要插入到 Sum+Ai?1 個珠子之中。

  • 這,便是一個經典的擋板問題!!

  • 這樣答案就是 CAi?1Sum+Ai?1

Code

#include<cstdio> using namespace std; const int N=500001,mo=998244353; long long ans=1,pre[N]; int sum; inline int read() {int data=0; char ch=0;while(ch<'0' || ch>'9') ch=getchar();while(ch>='0' && ch<='9') data=data*10+ch-'0',ch=getchar();return data; } inline long long ksm(long long x,int y) {long long s=1;while(y){if(y&1) s=s*x%mo;x=x*x%mo;y/=2;}return s; } int main() {int n=read();for(int i=pre[0]=1;i<N;i++) pre[i]=pre[i-1]*i%mo;while(n--){int x=read();ans=ans*pre[sum+x-1]%mo*ksm(pre[x-1],mo-2)%mo*ksm(pre[sum],mo-2)%mo;sum+=x;}printf("%lld",ans);return 0; }

總結

以上是生活随笔為你收集整理的JZOJ 4786. 【NOIP2016提高A组模拟9.17】小a的强迫症的全部內容,希望文章能夠幫你解決所遇到的問題。

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