摘要:
自闭集训 Day5 生成函数 一般生成函数 无脑地把序列变成多项式: $$ \{a_i\}\rightarrow A(x)=\sum_{n} a_nx^n $$ 形式幂级数 生成函数是一种形式幂级数。我们不关心这个函数的具体的取值,只关心多项式的系数。在需要的时候可以把$x$当成任意值。 例题 求 阅读全文
摘要:
自闭集训 Day3 字符串 SAM 考虑后缀树。 SAM的parent树是反串的后缀树,所以后面加一个字符的时候相当于往串前面加一个字符,恰好多出了一个后缀。 于是可以以此来理解SAM。 每一条路径对应原串的一个子串。 每一个终止节点对应一些后缀。 所有到同一个点的路径对应的子串互为后缀,长度连续。 阅读全文
摘要:
自闭集训 Day3 图论 NOI2019 D2T1 没有真正建出图来的必要,可以直接打取$\min$的$tag$。 也可以把边压进堆里,然后变成一个二维清点问题(???),然后就线段树+并查集(???)。 POI 2014/2015 某题 类似于GDOI2019,线段树或者堆直接做。 Gym1013 阅读全文
摘要:
自闭集训 Day2 线性代数 高斯消元 做实数时,需要找绝对值最大的作为主元,以获取更高精度。 在欧几里得环(简单例子是模合数)意义下也是对的。比如模合数意义下可以使用辗转相除法消元。 欧几里得环:对于任意$a,b$,都可以定义$a=qb+r\ \ (|r|p'$那么交换。 询问的时候取出$r$ 阅读全文
摘要:
自闭集训 Day1 组合计数 T1 $n\le 10$:直接暴力枚举。 $n\le 32$:meet in the middle,如果左边选了$x$,右边选了$y$(且$x+y\le B$),那么对答案的贡献就是 $$ {B x y+n 1\choose n 1} $$ 根据范德蒙德恒等式 $$ { 阅读全文
摘要:
自闭集训 Day1 数据结构 CF643G 用类似于下面的方法,搬到线段树上。 如何合并两个集合?先全部放在一起,每次删掉最小的$cnt_i$,然后把其他所有的$cnt$都减去$cnt_i$,直到还剩下$k$个。 $O(n)$众数 如果众数出现次数大于$n/2$,那么搞一个$cnt$和一个$ans$ 阅读全文
该文被密码保护。 阅读全文