Solution Set - 杂题题解(二)

「CF1726E」Almost Perfect

观察发现,排列中只会含有一元置换环,二元置换环,类似 \((j,j+1,i,i+1)\) 的四元置换环。

具体证明忽略,接下来考虑咋做。

首先忽略四元环,容易推出只有一元环和二元环的式子:\(f_i=f_{i-1}+(i-1)f_{i-2}\)

枚举四元环个数 \(i\),则选出四元环的方案数为 \(\binom{n-2i}{2i}\frac{(2i)!}{i!}\),解释就是先选出不相邻的数,再将他们组成 \((i,j)\) 这样的二元组,再乘上其他方案即可。

「CF95E」Lucky Country

乐子题,使用并查集求出连通块大小之后,问题就变成一个多重背包问题。

注意到物品的体积总和固定,那么本质不同的物品个数也就 \(\sqrt{n}\) 种,直接二进制分组即可。

「CF1245F」Daniel and Spring Cleaning

乐子题 *2。考虑二进制位,异或被称为不进位加法,那说明进位就寄,问题也就变成了:

\[\sum_{a=l}^r\sum_{b=l}^r [a\And b=0] \]

容斥后,数位 DP 即可。

「CF1372E」Omkar and Last Floor

状态挺难猜到的。

\(f_{l,r}\) 表示 \([l,r]\) 这之中的列的贡献。

考虑枚举某一列 \(k\),将经过 \(k\) 的全部填上 \(1\),然后左右两边 \(f_{l,k-1}\)\(f_{k+1,r}\) 是子问题,可以直接递归下去做。

由此可以简单做到 \(O(n^4)\),据说可以做到 \(O(n^3)\)

「AGC038C」LCMs / 「LG-P3911」最小公倍数之和

两者本质相同,我们以后者为例进行讨论。

\(x\) 出现了 \(c_x\) 次,可以将式子改写成:

\[\begin{aligned} & \sum_{i=1}^n\sum_{j=1}^n \text{lcm}(i,j)c_ic_j\\ = & \sum^n_{i=1}\sum^n_{j=1} \frac{ijc_ic_j}{\gcd(i,j)}\\ = & \sum_{d=1}^n\sum_{i=1}^{n/d}\sum_{j=1}^{n/d}[\gcd(i,j)=1]ijdc_{id}c_{jd}\\ = & \sum_{d=1}^n\sum_{i=1}^{n/d}\sum_{j=1}^{n/d}\sum_{t|i,t|j}\mu(t)ijdc_{id}c_{jd}\\ = & \sum_{d=1}^n\sum_{t=1}^{n/d}\sum_{i=1}^{n/dt}\sum_{j=1}^{n/dt}\mu(t)ijt^2dc_{itd}c_{jtd}\\ = & \sum_{T=1}^nT(\sum_{i=1}^{n/T}ic_{iT})^2\sum_{t|T}\mu(t)t \end{aligned} \]

预处理后面的 \(\sum_{i|T}\mu(t)t\) 即可做到 \(O(n\ln n)\)

「ICPC 2015 WF」Tours

妈的,证明好难,Link

这里仅说说具体做法,每次选定一条非割边,则删去这条边之后新增的割边和这条边需要被染上平均的颜色,取 \(\gcd\) 即可。

「CF1299D」Around the World

首先预处理出大小为 \(5\) 的线性基个数,这个数是 \(374\),注意省去存在不能插入的线性基,因为这样会导致存在异或和为 \(0\)

考虑将 \(1\) 点删去的连通块,这些连通块是相互独立的,我们以目前线性基为状态进行 DP,考虑每一个连通块的 DP 转移:

  • 此连通块不满足条件,则连通块必须被删去,\(f_{i-1,j}\to f_{i,j}\)
  • 此连通块满足条件,但是连到 \(1\) 的边可能有多条:
    • 一条,那么这条边可断可不断,\(f_{i-1,j}\to f_{i,j}\)\(f_{i-1,j\cup b_i}\to f_{i,j}\)
    • 两条,则共有三种情况,全断掉:\(f_{i-1,j}\to f_{i,j}\);断掉一条:\(2f_{i-1,j\cup b_i}\to f_{i,j}\),全部不断,此时会多出一个三元环,\(f_{i-1,j\cup b_i\cup w}\to f_{i,j}\)

预处理出 \(374\) 个线性基两两求交的答案,即可做到 \(O(1)\) 转移,故总复杂度为 \(O(374n)\)

posted @ 2022-10-21 16:14  时一月  阅读(64)  评论(0)    收藏  举报