摘要: 题目大意:判断组合数C(n,k),k<=n的奇偶性。 解法:C(n,k)的奇偶性取决于(n-k)和k对应的二进制数上是否有至少一位同为1,若有则为偶数,反之为奇数。 阅读全文
posted @ 2015-04-14 18:18 hxy_has_been_used 阅读(304) 评论(0) 推荐(0) 编辑
摘要: 插板法求得答案为:C(n+m,m)。直接运用lucas定理即可,只是需要预处理出阶乘值,否则会T。 1 #include 2 3 typedef long long ll; 4 const int N = 100000; 5 int f[N]; 6 7 void init( int p ) 8... 阅读全文
posted @ 2015-04-14 17:48 hxy_has_been_used 阅读(142) 评论(0) 推荐(0) 编辑
摘要: 由于p是素数,计算逆元可以借助费马小定理,用扩展欧几里得也可以,不过预计比快速幂慢吧。 代码如下: 参考于:http://m.blog.csdn.net/blog/acdreamers_11109/8037918 阅读全文
posted @ 2015-04-14 17:11 hxy_has_been_used 阅读(285) 评论(0) 推荐(0) 编辑
摘要: 题目大意:求解n的阶乘末尾0的个数。分析:产生0的原因有:(1):2 * 5(2):乘数末尾有0,如10, 200不过(2)可以归到(1)中,10 = 2 * 5, 200 = 2 * 2 * 2 * 5 * 5容易想到将n!分解成质数的乘积以后,只有2 * 5这种组合可以产生末尾的0,且2的个数一... 阅读全文
posted @ 2015-04-14 11:04 hxy_has_been_used 阅读(137) 评论(0) 推荐(0) 编辑