摘要: 线性基 最近刚学习了一个叫线性基的东西. 还是很有意思的. 线性基的性质 线性基有一些很妙的性质. 线性基是一个$x$维向量$a_1,a_2,a_3...a_x$,其中$a_i$最高位的$1$在第$i$位上. 由线性基中的数异或出来的数值域和原来的数异或和值域相同. 线性基的构造 插入一个数$x$时 阅读全文
posted @ 2018-12-04 10:34 Romeolong 阅读(172) 评论(0) 推荐(0) 编辑
摘要: 杜教筛 这个东西已经咕了差不多半年QAQ 然后现在才开始写. 有的时候,我们需要完成这样一个问题. 求$\sum_{i=1}^nf(i)$.其中$f$是积性函数. 当$n\leq 10^7$时,可以用线性筛解决这个问题. 然而,起源于$Project Eular$的这个黑科技可以把$n$的范围扩展到 阅读全文
posted @ 2018-12-04 08:52 Romeolong 阅读(610) 评论(0) 推荐(0) 编辑
摘要: 题目 "链接" 看到$n\leq 20$,马上想到状压$dp$. 考虑用$f[S][i]$表示集合$S$已经被考虑过了,独立集大小为$i$的方案数. 显然,这个集合$S$的最外层显然都没有被选. 考虑如何转移. 枚举一个$j\notin S$,那么独立集大小显然$+1$,然后所有和$j$相连的点都不 阅读全文
posted @ 2018-12-03 15:58 Romeolong 阅读(192) 评论(0) 推荐(0) 编辑
摘要: 终于对仙人掌有了一点初步的理解. 仙人掌 仙人掌是什么? 仙人掌是一个无向图. 仙人掌有什么特点? 仙人掌的每条边只属于一个简单环. 下面是一个栗子 有什么用呢? 我们可以先用$tarjan$找出环,然后处理. 下面是一道 "例题" ,$BZOJ4316$ 显然,在环内$dp$,把答案并到根(环中$ 阅读全文
posted @ 2018-12-03 11:19 Romeolong 阅读(328) 评论(0) 推荐(0) 编辑
摘要: 题目 "链接" 还是圆方树. 考虑如果可以走到一个连通分量,一定可以走到这个连通分量的最小值. 那么维护搜索栈,找点双. ~~这一部分自行学习~~. 假设已经建出了圆方树,然后$dfs$一遍. 圆点直接维护权值,方点用一个$multiset$维护它的所有儿子的权值. 然后树剖+线段树维护区间最小值即 阅读全文
posted @ 2018-12-03 11:18 Romeolong 阅读(177) 评论(0) 推荐(0) 编辑
摘要: 题目 "链接" 先构造圆方树,然后圆 圆边的距离就是直接距离,圆 方边的距离就是圆点到环的起始点的距离. 然后在圆方树上倍增就好了. 注意如果$LCA$是方点就往下跳到圆点,然后做一个环上最短路即可. 代码如下 cpp include include include include include 阅读全文
posted @ 2018-12-03 11:17 Romeolong 阅读(158) 评论(0) 推荐(0) 编辑
摘要: 题目 "链接" 考虑用$tarjan$找环,环内$dp$,环外$dp$. 用$f[u]$表示到$u$点的最长距离长度. 如果我们找到一条边是桥就直接转移——$f[u]=max(f[u],f[v]+len)$,同时更新$Ans$. 我们其实要求的就是$max(f[i]+f[j]+dis(i,j))$ 阅读全文
posted @ 2018-12-03 11:00 Romeolong 阅读(168) 评论(0) 推荐(0) 编辑
摘要: 题目 "链接" 一句话题意 求仙人掌上最大独立集 解析 考虑先用$tarjan$找出环,然后环内外分别处理. 其实是用$dfs$序的性质做题. 令$f[u][0]$表示不选$u$的最大独立集,$f[u][1]$表示选$u$的最大独立集,那么答案是$max(f[1][0],f[1][1])$ 如果我们 阅读全文
posted @ 2018-12-03 10:43 Romeolong 阅读(250) 评论(0) 推荐(0) 编辑
摘要: 先放个 "传送门" 后缀数组模板题 如果$p,q$是$r$相似的,相当于$p,q$有一个长度为$r$的$lcp$ 考虑把$SA$和$Height$建出来之后,让$Height$从大到小排序.然后从大到小做(因为两杯$r$相似的酒肯定是$0,1,2...r$相似的).用并查集维护每个连通块的$size 阅读全文
posted @ 2018-12-03 09:36 Romeolong 阅读(101) 评论(0) 推荐(0) 编辑
摘要: 一道很棒的$NTT$啊 "题目链接" $30$分做法 当$n\leq 20$时,很容易想到令$f[S]$表示死亡集合为$S$时的几率.$f[S\cup i(i\notin S)]=f[S\cup i(i\notin S)]+f[S] \frac{w_i}{\sum_{j\notin S} w}$ 当 阅读全文
posted @ 2018-12-01 09:06 Romeolong 阅读(195) 评论(0) 推荐(0) 编辑