codeforces 711E 数学
2016-09-18 11:51
357 查看
计算1-(2^n-1)*...*(2^n-(k-1))/(2^n(k-1)).
先算公约数,可以看出公约数只能是2的n次幂,求每个分子和2的n次幂的最大公约数,因为gcd(a,b)=gcd(b-a,a),所以直接求2^n和(k-1)!的公约数,然后同除就行。这里有勒让德定理:在正数n!的素因子标准分解式中,素数p的指数记作
![](http://g.hiphotos.baidu.com/baike/s%3D44/sign=02369b768fb1cb133a693d17dc540b7a/0b55b319ebc4b7457537478fcdfc1e178b821583.jpg)
,则
![](http://a.hiphotos.baidu.com/baike/s%3D122/sign=cee465657ed98d1072d40833133eb807/d009b3de9c82d1582c86aa28820a19d8bc3e4227.jpg)
。然后就能算出有多少2的约数,一除就行。
最后如果是大于最多的天数,就直接输出1。
先算公约数,可以看出公约数只能是2的n次幂,求每个分子和2的n次幂的最大公约数,因为gcd(a,b)=gcd(b-a,a),所以直接求2^n和(k-1)!的公约数,然后同除就行。这里有勒让德定理:在正数n!的素因子标准分解式中,素数p的指数记作
![](http://g.hiphotos.baidu.com/baike/s%3D44/sign=02369b768fb1cb133a693d17dc540b7a/0b55b319ebc4b7457537478fcdfc1e178b821583.jpg)
,则
![](http://a.hiphotos.baidu.com/baike/s%3D122/sign=cee465657ed98d1072d40833133eb807/d009b3de9c82d1582c86aa28820a19d8bc3e4227.jpg)
。然后就能算出有多少2的约数,一除就行。
最后如果是大于最多的天数,就直接输出1。
相关文章推荐
- [Codeforces 711E] ZS and The Birthday Paradox (数学+Legendre公式)
- Codeforces 839D Winter is here【数学:容斥原理】
- CodeForces 839D Winter is here(数学 容斥)
- CodeForces 630 I. Parking Lot(组合数学)
- CodeForces 454C Little Pony and Expected Maximum (数学推导)
- Codeforces 570B Simple Game 概率求解,简单数学思维
- codeforces 101C C. Vectors(数学)
- Codeforces 577 B Modulo Sum 简单数学+dp
- codeforces Buttons 数学公式构建
- codeforces 803C Maximal GCD(GCD数学)
- CodeForces - 151A Soft Drinking (数学水题)
- Codeforces 622F 「数学数论」「数学规律」
- CodeForces 621B B. Wet Shark and Bishops【数学+思路】
- codeforces 650A Watchmen 【数学】
- CodeForces 628B New Skateboard-数学水题
- codeforces 257 C. View Angle (数学)
- CodeForces 15 E.Triangles(组合数学+dp)
- CodeForces 51 E.Pentagon(组合数学)
- CodeForces 229 C.Triangles(组合数学)
- CodeForces 575 H.Bots(组合数学)