随笔分类 - 组合数学--常用公式与定理
摘要:链接:https://ac.nowcoder.com/acm/contest/881/B 题意:给出n,和数组a[n],求特定表达式取模后的值。 思路:用到列项相消: 那么,,然后就变成了求和问题,利用费马小定理求逆元可计算得到结果。 AC代码:
        阅读全文
                
摘要:题目链接:https://ac.nowcoder.com/acm/contest/879/A 题意:有n个城市,编号1~n,k天,第一天位于城市1,要求最后一天在城市1,且相邻两天不在同一个城市,求方案数。 思路:设k天后在城市1的方案数为f(k),前k-1天每天有n-1种选择,最后一天必须去城市1
        阅读全文
                
摘要:题目链接:https://vjudge.net/problem/POJ-2773 题意:给定m,k,求与m互质的第k个数。 思路一:利用gcd(a,b)=gcd(b*t+a,b)知道,与m互质的数是以m为周期分布的,这样可以先枚举小于m的所有与m互质的数,利用周期就可以得到第k小的数了,这样复杂度为
        阅读全文
                
摘要:题目链接:http://poj.org/problem?id=1019 题意:对于序列1121231234...,求第i个数字(i<=2147483647)。 思路:记第一组为1,第二组为12,第三组为123,打表预处理计算除第2147482647位在第31268组,然后预处理计算前31268组的位
        阅读全文
                
摘要:求组合数有O(n^2)和 O(n)的算法,但是当n十分大的的时候,就要用到卢卡斯定理了。 比如求C(n, m) % p , n<=1e18,m<=1e18,p<=1e5。利用lucas定理时p一定要<=1e5,且p为素数。 Lucas定理:C(n, m) % p = C(n / p, m / p) 
        阅读全文
                
摘要:题目链接:https://ac.nowcoder.com/acm/contest/548/F 题意:简化题意之后就是求[1,n]中不能被[2,m]中的数整除的数的个数。 思路:简单容斥题,求[1,n]中不能被[2,m]中的数整除的数的个数,可以通过求能够被整除的数。 首先,[2,m]中的合数肯定能由
        阅读全文
                
摘要:昨天做了一个求[1,n]里能被[2,m]中的数整除的个数,就去搜容斥原理,找到一篇讲得特别好的博客,就转载了其中一部分过来。 转载:https://blog.csdn.net/m0_37286282/article/details/78869512 关于集合的原理公式 上述描述的公式形式可以表示如下
        阅读全文
                
 
                    
                
 
         浙公网安备 33010602011771号
浙公网安备 33010602011771号