hdu 3037 Saving beans 卢卡斯定理
来源:互联网 发布:php求和函数 编辑:程序博客网 时间:2024/06/05 20:13
点这里
卢卡斯定理的模板题
利用隔板法易知组合数C(n+m,m)
ans=C(n+m,m)%p
快速幂求逆元
#include <iostream>#include <string.h>#include <stdio.h>#include <math.h>using namespace std;typedef long long ll;const int maxn= 100000;ll mod;//=1e4+7;ll f[maxn];void init(){ f[0]=1; for(ll i=1; i<=mod; i++) f[i]=(i*f[i-1])%mod;}long long pow1(long long n,long long m ){ long long ans = 1; while(m > 0) { if(m & 1)ans = (ans * n) % mod; m = m >> 1; n = (n * n) % mod; } return ans;}long long lucas(ll n,ll m){ ll ans=1; while(n&&m) { ll x,y; x=n%mod; y=m%mod; if(x<y) return 0; // printf("%lld %lld %lld\n",f[x],f[y],f[x-y]); ans=ans*f[x]*pow1(f[y]*f[x-y]%mod,mod-2)%mod; n/=mod; m/=mod; } return ans%mod;}int main(){ ll n,m; int t; cin>>t; while(t--) { scanf("%lld%lld%lld",&n,&m,&mod); init(); printf("%lld\n",lucas(n+m,m)); } return 0;}
阅读全文
0 0
- hdu 3037 Saving Beans 卢卡斯定理
- hdu 3037 Saving Beans (卢卡斯定理)
- hdu 3037 Saving beans 卢卡斯定理
- hdu 3037 Saving Beans(lucas定理)(卢卡斯定理)
- Hdu 3037 Saving Beans 卢卡斯定理 解题报告
- hdu 3037 Saving Beans(Lucas定理)
- HDU 3037 Saving Beans (Lucas定理)
- HDU 3037 Saving Beans(lucas定理)
- HDU 3037 Saving Beans (Lucas定理)
- [Lucas定理] hdu 3037 Saving Beans
- hdu 3037 saving beans (lucas定理)
- HDU 3037 Saving Beans (Lucas定理)
- hdu 3037 Saving Beans lucas定理
- HDU 3037:Saving Beans(Lucas定理)
- HDU 3037 Saving Beans Lucas定理
- hdu 3037 Saving Beans Lucas定理
- Saving Beans (卢卡斯定理)
- hdu 3037 Saving Beans 【大组合数取模-Lucas定理+逆元取模】
- 欧拉函数
- Codeforces Round #426 (Div. 2)
- spring&velocity>velocityEngine
- CardView使用详解
- 每日工作计划
- hdu 3037 Saving beans 卢卡斯定理
- hibernate的事物隔离级别和传播特性
- HTML 5 本地存储----LocalStorage 小DEMO
- Python学习笔记——字典
- +-字符串
- Docker总结——Dockerfile
- dubbo支持的注册中心
- Volley源码分析
- Java进阶(五十三)JAVA 注解机制