2017 ACM-ICPC 亚洲区(西安赛区)网络赛 Coin (概率公式+快速幂)
2017-09-16 15:57
369 查看
题意:一枚不均匀的硬币,正面向上的概率是q/p,问抛k次之后向上的次数为偶数的概率是多少。
输出的概率是整数,是把概率变成分数取模(逆元)得到的。
思路:
度娘神了,下面的例子正好可以用于本题,把最后的结果化成一个分数的形式就可以快速幂了。
点击打开链接
#include <bits/stdc++.h> int MOD=1e9+7; using namespace std; typedef long long LL; LL quickpow(LL m,LL n) { LL b=1; m%=MOD; while(n>0) { if(n&1)b=(b*m)%MOD; n=n>>1; m=(m*m)%MOD; }return b; } int main() { LL p,q,k; int t; scanf("%d",&t); while(t--) { scanf("%lld%lld%lld",&p,&q,&k); LL ans=(quickpow(p,k)+quickpow(p-2*q,k))%MOD; LL temp=quickpow(p,k); ans=(ans*quickpow(2,MOD-2))%MOD; ans=(ans*quickpow(temp,MOD-2))%MOD; printf("%lld\n",ans); } return 0; }
相关文章推荐
- 2017 ACM-ICPC 亚洲区(西安赛区)网络赛 B. Coin(概率)
- 2017 ACM-ICPC 亚洲区(西安赛区)网络赛 B.Coin(基本概率+二项式展开)
- 2017 ACM-ICPC 亚洲区(西安赛区)网络赛 Coin 概率+矩阵快速幂
- 2017 ACM-ICPC 亚洲区(西安赛区)网络赛 B Coin (概率计算)
- 2017 ACM-ICPC 亚洲区(西安赛区)网络赛 B.Coin(数学推公式)
- 2017 ACM-ICPC 亚洲区(西安赛区)网络赛 B Coin (概率计算)
- 【二项式定理】【推导】计蒜客17115 2017 ACM-ICPC 亚洲区(西安赛区)网络赛 B. Coin
- 2017 ACM-ICPC 亚洲区(西安赛区)网络赛 B. Coin
- 2017 ACM-ICPC 亚洲区(西安赛区)网络赛 B coin
- 2017 ACM-ICPC 亚洲区(西安赛区)网络赛 Coin 二项式定理
- 2017 ACM-ICPC 亚洲区(西安赛区)网络赛 B. Coin(矩阵快速幂)
- 2017 ACM-ICPC 亚洲区(西安赛区)网络赛b题Coin(矩阵快速幂)
- 2017 ACM-ICPC 亚洲区(西安赛区)网络赛 B. Coin
- 【2017 ACM-ICPC 亚洲区(西安赛区)网络赛】 B. Coin
- B. Coin 数学/组合数 2017 ACM-ICPC 亚洲区(西安赛区)网络赛
- 2017 ACM-ICPC 亚洲区(西安赛区)网络赛 - Coin(二项式展开)
- 2017 ACM-ICPC 亚洲区(西安赛区)网络赛_Coin
- 2017 ACM-ICPC 亚洲区(西安赛区)网络赛 B. Coin
- 2017 ACM-ICPC 亚洲区(西安赛区)网络赛 B:coin
- 计蒜客17115 Coin 数学 2017 ACM-ICPC 亚洲区(西安赛区)网络赛