![](https://img-blog.csdnimg.cn/20201014180756724.png?x-oss-process=image/resize,m_fixed,h_64,w_64)
笔记
文章平均质量分 58
clearlove༇
这个作者很懒,什么都没留下…
展开
-
树链剖分笔记
什么是树链剖分?树链剖分有什么作用?字面意思,就是把一颗树拆成几个链,这些链上的节点序号是连续的,那么对于树上的路径的一些问题就可以转化为区间问题,就可以用熟悉的一些数据结构来维护了一些需要知道的定义重/轻 儿子:对于父节点来说,他的儿子节点中size最大的就是重儿子其他都是轻儿子,如果所有儿子节点size都相同,那么任意选一个作为重儿子重/轻边父节点与他重儿子连的边是重边,其余是轻边重/轻链,重边连起来的就是重链推出的性质1.如果u与v是一条轻边,那么size[v]*2<size[u]原创 2021-11-04 15:07:40 · 255 阅读 · 1 评论 -
初涉组合数
组合数 CNMC_{N}^{M}CNM二项式定理(a+b)n=∑i=0n\sum_{i=0}^n∑i=0nCniC_{n}^{i}Cniaib(n-i)证明:1.数学归纳法(就不进行这个方法的证明了)2.展开为(a+b)∗*∗(a+b)∗*∗…∗*∗(a+b),对于每一项只有两个选择是a或者b,当我们假定选择了i个a时,就需要选择n−-−i个b,然后根据组合数,只需要选择任意i个a的组合就可以,得证一些简单的性质1.CNMC_{N}^{M}CNM=n(n−1)...(n−m+1)m(m−原创 2021-10-21 23:31:39 · 201 阅读 · 0 评论 -
每日一题QAQ
cf736D思路:a%m=n同时b%m=n(m>=2)可以推出gcd(a,b)!=1可以直接双指针来做,不过可能代码会写出锅由于数组是静态的不会变化,可以考虑使用st表来维护代码:#include <bits/stdc++.h>#define ll long longusing namespace std;const int N = 2e5 + 10;ll c[N], a[N];ll f[N][65];int t, n;void init(int n){原创 2021-08-21 00:35:21 · 111 阅读 · 0 评论