摘要: Catalan数和Stirling数 阅读全文
posted @ 2023-07-13 21:59 天雷小兔 阅读(75) 评论(0) 推荐(0)
摘要: 容斥原理的原式有两个,分别是第一形式:|A U B|=|A|+|B|-|AB| 第二形式:|A U B U C|=|A|+|B|+|C|-|AB|-|AC|-|BC|+|ABC| 容斥原理最经典的应用是与dp相结合 下面给出一道例题: P1450 [HAOI2008] 硬币购物 将多重背包与容斥原理 阅读全文
posted @ 2023-07-12 19:59 天雷小兔 阅读(76) 评论(0) 推荐(0)
摘要: 卢卡斯定理的原式:C(n,r) mod m=C(n1,r1)*C(n2,r2)*......*C(nk,rk) mod m 卢卡斯定理的变式:C(n,r) mod m=C(n mod m,r mod m)*C(n/m,r/m) mod m 卢卡斯定理的时间复杂度很低,接近O(n) 下面给出一道例题 阅读全文
posted @ 2023-07-12 19:53 天雷小兔 阅读(40) 评论(0) 推荐(0)
摘要: 杨辉三角 解法1:dfs 使用记忆化搜索,提升dfs效率 代码: int dfs(int n,int m){ if(!m)return c[n][m]=1; if(m==1)return c[n][m]=n; if(c[n][m])return c[n][m]; if(n-m<m)m=n-m; re 阅读全文
posted @ 2023-07-11 20:18 天雷小兔 阅读(117) 评论(0) 推荐(0)
摘要: 鸽巢原理的生活原型:k*n+1只鸽子住在n个巢里,至少有一个巢里有k+1只或更多 鸽巢原理的加强形式:令q1,q2,......,qn为正整数,如果将q1+q2+q3+......+qn-n+1个水果放入n个盒子,或者第一个盒子至少有q1个水果...... 鸽巢原理的拓展——Ramsey定理:在6人 阅读全文
posted @ 2023-07-11 19:43 天雷小兔 阅读(163) 评论(0) 推荐(0)
摘要: 加法原理、乘法原理等是组合数学中的基础 加法原理 将集合S划分为S1,S2,S3,......,Sm,则|S|=|S1|+|S2|+|S3|+......+|Sm| 乘法原理 定义集合S是元素序列(a,b)的集合,对于元素a有P种选择,元素b有Q种选择,则S的大小为P*Q 排列 一.不可重复排列数 阅读全文
posted @ 2023-07-10 20:35 天雷小兔 阅读(67) 评论(0) 推荐(0)
摘要: 杜教筛起源于中学信息学队员杜瑜皓 它结合了三种算法,分别是:整除分块,狄利克雷卷积和线性筛 它主要是求解n较大时的积性函数的值 它的时间复杂度是O(n^(2/3)),小于O(n) 杜教筛在竞赛中很难出现 例题:P4213 【模板】杜教筛(Sum) 这是一道模板题,给出代码 #include<bits 阅读全文
posted @ 2023-07-09 14:02 天雷小兔 阅读(115) 评论(0) 推荐(0)
摘要: 莫比乌斯函数的原式是u(n)={1,n=1 (-1)^r,n=p1*p2*p3*......*pr 其中p为不同的质数 0,其他} 它有两种解法,分别是欧拉筛和杜教筛 下面给出欧拉筛的代码: #include<bits/stdc++.h> #define ll long long using nam 阅读全文
posted @ 2023-07-09 13:56 天雷小兔 阅读(31) 评论(0) 推荐(0)
摘要: 狄利克雷卷积主要在杜教筛中应用,他的原式是:设f和g为算数函数,定义f和g的卷积为(f*g)(n)=sum(f(d)g(n/d)) 他符合三种运算律: 第一种:交换律 f*g=g*f 第二种:结合律 (f*g)*h=f*(g*h) 第三种:分配律 f*(h+g)=(f*h)+(f*g) 阅读全文
posted @ 2023-07-09 13:33 天雷小兔 阅读(51) 评论(0) 推荐(0)
摘要: 整除分块 阅读全文
posted @ 2023-07-08 21:14 天雷小兔 阅读(155) 评论(0) 推荐(0)