摘要: 首先一看应该是组合数的问题,但我们选出m个数之后,其他的数就不能再排在它原本的位置,所以又需要错排求出方案数。 错牌公式递推式: 有d[2]=1,d[0]=1,d[1]=0。d[i]=(i-1)*(d[i-1]+d[i-2]) 又由乘法原理可得出总方案数。 注意:阶乘,逆元,错排都要预处理出来,否则 阅读全文
posted @ 2019-06-12 19:25 JBLee 阅读(254) 评论(2) 推荐(1) 编辑
摘要: 模板题,最重要的是BSGS算法 阅读全文
posted @ 2019-06-12 16:15 JBLee 阅读(300) 评论(0) 推荐(0) 编辑
摘要: 这道题明显是组合数的题目,但对于组合数的考察还是比较灵活,网上有一篇博客里讲的比较清楚 阅读全文
posted @ 2019-06-12 15:36 JBLee 阅读(321) 评论(0) 推荐(0) 编辑
摘要: 对于组合数,往往要用到阶乘,但是阶乘的数据极其之大,所以要用取模的办法防止数据溢出。 而卢卡斯定理在这个时候就有很大的用处了,来看百度百科上的简介。 代码如下 Luogu P3807 阅读全文
posted @ 2019-06-12 14:48 JBLee 阅读(165) 评论(0) 推荐(0) 编辑
摘要: noip原题 扩欧入门裸题,题中的同余方程看作ax+by=1,记住一个重要的结论形如ax+by=c的方程的最小正整数解为(x*(c/gcd(a,b))%abs(b/gcd(a,b))+abs(b/gcd(a,b)))%gcd(b/gcd(a,b))可以看我之前有关扩欧算法的博客。 阅读全文
posted @ 2019-06-12 14:14 JBLee 阅读(133) 评论(0) 推荐(0) 编辑