CYJian的新春虐题赛
题解:
t1:
算了一下发现乘法也是可以莫比乌斯反演的
然后就直接对原式莫比乌斯反演了
大概加法是$\mu {(i)}*f(i)$ 乘法就是$f(i)^{\mu {(i)}}$
然后这个算法成功达到$nlog^2$
两个log里面都加了除法分块依旧没卡过
大概可以通过记忆化一下达到一个log但这题空间就8mb不太想写
为啥大家的做法都是0~1个log啊
t2:
把中间空行删了这个是基本套路
然后就是网络流的建图
大概就是同一列上下连相邻边,行相同列相邻再连一条边
我感觉我算的复杂度这样跑网络流就能过了
题解的费用流的复杂度好奇怪。。。
当然由于只有0/1边所以spfa可以替换成0/1bfs(不过复杂度应该是少一个log呀)
t3:
和题解做法不太一样
直接打了个表
然后高阶差分了一下
发现是常数列
所以这个东西应该有通项而且最高次数是k-1了
然后就拉格朗日插值一下了
通过记忆化一些东西就可以做到做$n^2$次了 加上求逆元$n^2logn$
题解的做法也比较简单
考虑把那个式子化成从上一行递推
会发现可以列成乘上$(1+2x+2x^2+2x^3+...)$
这个套个ntt+快速幂就行了
$n*log^2n$的 好像比拉格朗日插值快不到哪里去
t4:
发现考虑组合数这个不太好做
然后变成dp过去
发现可以矩阵优化然后矩阵还是个循环矩阵
于是复杂度就可以$k^2logn$了