随笔分类 - 数学
题解 luoguP5466 【[PKUSC2018]神仙的游戏】
摘要:显然要是没有限制那就全都是1对吧, 所以考虑这些0,1到底限制了啥。 首先看到border, 容易想到当年写kmp求最短回文子串的那题。因为kmp的next数组实际上就是最长border。我们也在那题积累一个结论, 就是对于原来的串一个长度为k的border,
题解 P4233 【射命丸文的笔记】 && 考试T3
摘要:考虑每一条哈密顿回路在所有竞赛图中的出现次数。 发现如果确定一个环, 其他的边乱选就可以保证出现哈密顿回路。所以对于一条哈密顿回路, 出现次数为2C2n−n, 减去的n为那n条边。哈密顿回路是1−n的一个排列首尾拼在一起, 共有n!/n种。于是总贡献可以直接得出。 总贡
SP5971 【LCMSUM - LCM Sum】
摘要:lei/ ∑ni=1lcm(i,n)=∑ni=1ingcd(i,n)= ∑nd|n∑ni=1ind[gcd(i,n)==d]= \(n \times \sum^{n}_{d
AT1983 [AGC001E] BBQ Hard
摘要:前言 学到了一个trick。 对于一个组合数 Cxx+y可以看成是从(0,0)到(x,y)的路径条数。 解法 对于这题而言,Cai+ajai+bi+aj+bj就表示从点(0,0)到点(ai+aj,bi+bj)的路径条数。 ~~然后你
NTT板子
摘要:```cpp #include #include using namespace std; #define R register #define LL long long const int inf=0x3f3f3f3f; const int MAXN=4e6+10; inline int read() { char a=getchar(); int x=0,f=1; for(;a>'9'||a=
FFT板子
摘要:```cpp #include #include #include #include #include using namespace std; #define R register #define LL long long const int inf=0x3f3f3f3f; const int MAXN=4e6+10; const double PI=3.14159265358979323846
斐波那契数列简单性质
摘要:计数性质 Fi=Fi−1+Fi−2 ∑ni=1Fi=Fn+2−F2 证明: 当n=1时,F3−F2=F1显然成立。 当n=2时,F4−F2=F3+F2−F2=F1+F2,成立。 当n=k−1时,由公
二项式反演学习笔记
摘要:前置知识 + 容斥原理 + 组合数 约定 A′i表示集合Ai的补集。 反演形式 形式一 f(n)=n∑i=0(1)iCing(i)⇔g(n)=n∑i=0(1)iCinf(i) 证明 设$A_1,A_