省选模拟七十三 题解

T1
n行不是n列!95分没了
(dp[i][j][k])代表考虑到了第i行一共选了j个且第i行是k的方案数
可以转移到的位置可以预处理处理
复杂度(O(nm*64))
T2
考虑二分答案mid
假如选了一个集合S
那么要求最小化(ans=-cut(S)+sum_{iin S}sum[i]-2*mid*a[i])
恰好符合最小割的模型
有些卡常,需要当前弧优化
T3
(ans=sum_{i=1}^{n}sum_{d|i}[gcd(d,i/d)=1])

(ans=sum_{i=1}^{n}sum_{p|d and p|(i/d)}mu_{p})

(ans=sum_{i=1}^{n}sum_{p^2|i}mu_{p}g(i/(p^2)))

其中(g(i))代表i的约数个数
(ans=sum_{i=1}^{sqrt{n}}mu_{i}sum_{j=1}^{n/(i^2)}g(j))

(ans=sum_{i=1}^{sqrt{n}}mu_{i}sum_{j=1}^{n/(i^2)}n/(i^2*j))

复杂度(O(sqrt{n}lnsqrt{n}))

原文地址:https://www.cnblogs.com/AthosD/p/12722912.html