【组合数】51Nod 1627 瞬间移动
2017-10-25 16:42
141 查看
题面在这里
考虑枚举移动的步数i
那么答案就是
∑i=1i<min(n,m)Ci−1n−2⋅Ci−1m−2
示例程序:
考虑枚举移动的步数i
那么答案就是
∑i=1i<min(n,m)Ci−1n−2⋅Ci−1m−2
示例程序:
#include<cstdio> typedef long long ll; const int maxn=100005,tt=1e9+7; int n,m; ll fac[maxn],inv[maxn],ans; ll power(ll a,int b){ ll w=a,res=1; while (b){ if (b&1) res=res*w%tt; w=w*w%tt; b>>=1; } return res; } void make(){ fac[0]=1;inv[0]=1; for (int i=1;i<=100000;i++) fac[i]=fac[i-1]*i%tt,inv[i]=power(fac[i],tt-2); } inline ll C(int y,int x){ return fac[x]*inv[y]%tt*inv[x-y]%tt; } int main(){ scanf("%d%d",&n,&m); if (n==2||m==2) return printf("1"),0; make();ans=0; for (int i=1;i<n&&i<m;i++) (ans+=C(i-1,n-2)*C(i-1,m-2)%tt)%=tt; printf("%lld",ans); return 0; }
相关文章推荐
- 51nod 1627 瞬间移动【组合数学】
- 51nod 1627 瞬间移动 组合数取模
- 51nod 1627:瞬间移动
- 51nod-1627 瞬间移动(组合数+逆元)
- 51nod 瞬间移动 (组合数学)
- 51nod 1627 瞬间移动
- 51nod 1627 瞬间移动
- 51nod 1627 瞬间移动 组合数
- 51nod 1202 子序列个数 (组合数学 +动态规划)
- 51Nod 1016 水仙花数 V2(组合数学,枚举打表法)
- 51NOD 1806 wangyurzee的树(容斥原理 + 组合数学)
- 51Nod 1268 和为K的组合 (Dp,暴力)..数据水了
- 51nod 1268 和为k的组合
- 51nod 1119 机器人走方格 V2 【组合数学】
- 【51Nod - 1268】和为K的组合 【01背包】or 【dfs】
- 大组合数取模hdu5698 瞬间移动
- 51nod 1119 机器人走方格 V2 求大组合取模--逆元
- 【HDU 5698】瞬间移动(组合数,逆元)
- HDU 5698 瞬间移动 [数论] [逆元] [组合数取模]
- 51nod 1119 机器人走方格V2(求组合数,费马小定理+快速幂/逆元+gcd)