bzoj 1856: [Scoi2010]字符串

Posted xiyuedong

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了bzoj 1856: [Scoi2010]字符串相关的知识,希望对你有一定的参考价值。

 1 #include<cstdio>
 2 #include<iostream>
 3 #define Q 20100403
 4 long long n,m,a,b,k,ans=1;
 5 int main()
 6 {
 7     scanf("%lld%lld",&n,&m);
 8     b=(n-m+1)%Q;
 9     for(int i=2;i<=m+n;i++)
10       b=(b*i)%Q;
11     a=1;
12     for(int i=2;i<=n+1;i++)
13       a=(a*i)%Q;
14     for(int i=2;i<=m;i++)
15       a=(a*i)%Q;
16     k=Q-2;
17     for(;k;)
18       {
19         if(k%2)
20           ans=(ans*a)%Q;
21         a=(a*a)%Q;
22         k>>=1;
23       }
24     printf("%d",(b*ans)%Q);
25     return 0;
26 }

卡特兰数答案为C(n+m,m-1)

以上是关于bzoj 1856: [Scoi2010]字符串的主要内容,如果未能解决你的问题,请参考以下文章

bzoj 1856: [Scoi2010]字符串

bzoj 1856: [Scoi2010]字符串

bzoj1856 [Scoi2010]字符串

bzoj1856 [Scoi2010]字符串

BZOJ1856 [SCOI2010]生成字符串 组合数

bzoj 1856 [SCOI2010]生成字符串