2018/7/14:普通的纪中一天
儿子兄弟表示法
将一颗多叉树转换为二叉树的方法,左子节点连原树的第一个儿子,右子节点连原树的右边的兄弟

适用范围:树形dp
数位dp常见方法
- 状态压缩
- 分类讨论
- 记忆法(记忆化搜索)
手推exgcd
ax+by=gcd(a,b)
bx′+(a%b)y′=gcd(b,a%b)
展开(a%b)
bx′+(a−⌊a/b⌋b)y′=gcd(b,a%b)
拆开括号
bx′+ay′−⌊a/b⌋by′=gcd(b,a%b)
将a和b取出
ay′+b(x′−⌊a/b⌋y′)=gcd(b,a%b)
∵gcd(a,b)=gcd(b,a%b)
∴ay′+b(x′−⌊a/b⌋y′)=ax+by
将两边的a和b取出
y′+(x′−⌊a/b⌋y′)=x+y
然后由于两边是等价的
∴⎩⎪⎪⎨⎪⎪⎧x=y′y=(x′−⌊a/b⌋y′)
2018/7/16:腐败普通的纪中一天
gcd证明
我们设d=gcd(a,b)
∵d∣a,d∣b
∴d∣a%b
设gcd(b,a%b)=d′
∵d′∣b,d′∣a%b
∴d′∣a
gcd(a,b)=gcd(b,a%b)
2018/7/17:颓废普通的纪中一天
时间复杂的与数据范围
n⩽15 : O(2n)
n⩽70 : O(n4)
n⩽500 : O(n3)
n⩽5000 : O(n2)
n⩽104 : O(nn)
n⩽105 : O(n (log n)2)
n⩽5∗105 : O(n log n)
n⩽106 : O(n log log n)
n⩽5∗106 : O(n)
n⩽2147483647 : O(n)
n⩽max_longlong : O(log n)
2018/7/18:罕见正常的纪中一天
gcd的和之一
i=1∑ngcd(n,i)
=
d∣n∑φ(n/d)×d
证明与例题:https://blog.****.net/mr_wuyongcong/article/details/81104903