洛谷 P3000 [USACO10DEC] Cow Calisthenics G 设dud[u]du为从uuu出发到子树中【断开边后连通块的叶子节点】所经过的最多的节点数,包括uuu节点自己。这句话可能比较难理解。设vvv为uuu的一个子节点,那么程序会先递归判断以vvv为根的子树中哪些边需要被断掉。那么再回朔到uuu节点时,子树vvv就算一个被删了一些边的连通块,那么子树vvv就会有一些新的叶子节点。这些新叶子节点到uuu会经过若干节点,dud[u]du就代表【经过节点数最多的】那条路径上的【节点数】。如此一来,dvd[v]
洛谷 P3205 [HNOI2010] 合唱队 先设dpij为区间ij的队形方案数。考虑如何转移:对于区间ij来说,最后一个入队的要么是i,要么是j。jij−1hihjhj−1hiiji1hihjhihi1发现上一个状态有两种,即:在上一个状态中,最后一个进来的数(也就是当前状态的倒数第二个进来的数)是在【队尾/队头】。因此我们要丰富一下状态定义:设dpij0表示最后一个进来的数在【队头】的方案数,dpij1表示最后一个进来的数在【队尾】的方案数。最后答案就是。
CF1324F Maximum White Subtree 看到题目最直接的想法就是以每个节点为根进行n次树形dp。因为以节点u为根时我们只需要考虑把树的某些"分杈"剪去,而不用关心u节点是否被包含在某个子树中。但时间复杂度是On2,所以考虑换根dp。
二分图的König-Egerváry定理 最小点覆盖集是指:在二分图中,选取并使,这些点构成的,就是。最小点覆盖集的,就是。在二分图中每条边连着左部和右部的一个点,所以对于一个的二分图,它的就是它和中的。这个连通二分图的也是左右部中较小一个的大小。因为这个图连通,较小部内的任意一点向外连了一条边。那么就可知:在一个连通的二分图中,这个图的和相等。那么对于的二分图呢?不连通的二分图其实就是几个连通的二分图组成的。所以:在一个不连通的二分图中,这个图的和也相等。
字符串哈希 字符串哈希其实就是把一段字符串转化成一个数字。在进行字符串匹配时不需要再OstrlensOstrlens))匹配字符串本身,而只需要匹配两个字符串的哈希值就好了。在选定ppp和modmodmod时,两者都最好选一个较大的质数,可以降低哈希的冲突率。在这里推荐ppp取131131131或133113311331或131313113131311313131modmodmod一般取2333333323333333。
费马小定理 & 欧拉定理及其证明 证明也与费马小定理的过程大同小异,再次笔者不过多赘述。中的数是已知两两不同的,所以这个假设不成立。自身的任意一个整数】互质,且与【自身】不互质。” 表示阶乘,不是表感叹语气)中存在两个相同的数,设为。是欧拉函数,表示小于等于。为质数,它的正因子只有。,即它们的最大公因数不是。,这里就相当于简写了)。因为任意一个素数都与【
筛法:普通筛、埃氏筛与欧拉筛 对于一个合数x,一定存在一个质数p≤x且p∣x。先把结论考虑简单一点:合数x一定存在一个小于等于x的因数。显然一个合数x可以被一对非1非x的整数pq表示为xpq则其中至少有一个整数小于x因为若pqx,那么pqx。再进一步考虑这个结论:合数x一定存在一个小于等于x的质因数。我们先假设每个合数不存在非1质因子,对于合数x,它一定有一个的小于等于x的非1因数p而已经假设了每个合数不存在质因子,所以p为合数,