BZOJ2729 [HNOI2012]排队(排列组合+高精度)
来源:互联网 发布:免费刷视频会员软件 编辑:程序博客网 时间:2024/05/01 16:08
【题解】
A(n,n)*( A(2,n+1)*A(m,n+3) + C(1,n+1)*A(2,2)*C(1,m)*A(m-1,n+2) )
= A(n,n)*( A(2,n+1)*A(m,n+3) + (n+1)*2*m*A(m-1,n+2) )
为防止数字过长导致复杂度太大,用long long压9位(防止乘爆)
【代码】
#include<stdio.h>#include<stdlib.h>#include<string.h>#define LEN 2000#define MOD 1000000000llstruct big{long long s[LEN+5];big(){memset(s,0,sizeof(s));}};int get(big a){int i;for(i=1;i<LEN;i++)if(a.s[i]!=0) break;return i;}void jw(big& a){int i;for(i=LEN;i>0;i--){a.s[i-1]+=a.s[i]/MOD;a.s[i]%=MOD;}}big cheng_num(big a,int b){int i;for(i=LEN;i>0;i--)a.s[i]*=b;jw(a);return a;}big cheng(big a,big b){big res;int i,j,ta=get(a),tb=get(b);for(i=LEN;i>=tb;i--){for(j=LEN;j>=ta;j--)res.s[i+j-LEN]+=b.s[i]*a.s[j];jw(res);}return res;}big jia(big a,big b){big res;int i;for(i=LEN;i>0;i--)res.s[i]=a.s[i]+b.s[i];jw(res);return res;}big A(int m,int n){big res;int i;res.s[LEN]=1;for(i=n-m+1;i<=n;i++)res=cheng_num(res,i);return res;}void print(big a){int i,ta=get(a);printf("%lld",a.s[ta]);for(i=ta+1;i<=LEN;i++)printf("%09lld",a.s[i]);}int main(){big t;int n,m,i,j,k;scanf("%d%d",&n,&m);if(m>n+3) printf("0");else print( cheng( A(n,n) , jia( cheng(A(2,n+1),A(m,n+3)) , cheng_num(A(m-1,n+2),(n+1)*2*m) ) ) );return 0;}
0 0
- BZOJ2729 [HNOI2012]排队(排列组合+高精度)
- [BZOJ2729][HNOI2012]排队(组合数学+高精度)
- [BZOJ2729][HNOI2012]排队(组合数学+高精度)
- 组合数学+高精度 BZOJ2729 [HNOI2012]排队
- 【BZOJ2729】【HNOI2012】排队(组合数学)
- [BZOJ2729][HNOI2012]排队
- [BZOJ2729] [HNOI2012]排队
- bzoj2729: [HNOI2012]排队
- 【HNOI2012】【BZOJ2729】排队
- 【bzoj2729】[HNOI2012]排队
- bzoj2729: [HNOI2012]排队
- 【BZOJ2729】【HNOI2012】排队 组合数 数论 Python高精度
- 【BZOJ2729】[HNOI2012]排队【组合数学】
- 【BZOJ2729】排队(组合数学 + 高精度)
- BZOJ 2729: [HNOI2012]排队|排列组合
- [BZOJ 2729][HNOI2012]排队:高精度+组合数
- [HNOI2012]排队
- 【BZOJ 2729】 [HNOI2012]排队
- Edit Distance - LeetCode 72
- 5.3-2
- OpenCV编程例子笔记一
- 祛痘小秘方汇总
- JAVA LIST的三种遍历方法
- BZOJ2729 [HNOI2012]排队(排列组合+高精度)
- 5.3-3
- 【python学习笔记二】基本数据类型
- malloc 从哪里得到的内存空间
- [Servlet]Servlet的工作流程及注意事项
- 线程知识回顾
- 携程事件简单故障分析
- UGUI(四)事件系统的封装
- Github 上Top1的Android 异步网络请求框架