JZOJ 4786. 【NOIP2016提高A组模拟9.17】小a的强迫症
生活随笔
收集整理的這篇文章主要介紹了
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的强迫症的全部內容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: JZOJ 1422. 猴子摘桃
- 下一篇: JZOJ 4822. 【NOIP2016