powerful number & ULR #1 校验码
用 PN 做 min25 模板:
\(F(p^k) = p^k(p^k-1),F(p)=p(p-1)\)
构造 \(G(x) = x\varphi(x)\) ,\(H = F/G\) ,\(H\) 只在 PN 处有值。
\[\sum_{i=1}^n F(i) = \sum_{d=1}^n [d\in \text{PN}] H(d) \text{sum}G(n/d)
\]
想要求:
\[\text{sum}q(\lfloor \dfrac nt \rfloor)
\]
\[q(p^k) = p^{c\lfloor k/2 \rfloor}
\]
\[q(p) = 1
\]
用 PN 做:
构造函数 \(G=I,H=q/I\),\(H\) 只在 PN 处有值。
算一算会发现:
\[H(p^k) = [k\bmod 2 = 0](p^{ck/2}-p^{ck/2-1})
\]
于是只在平方数处有值。
\[\text{sum}q(n)
\]
\[=\sum_{i=1}^{\sqrt n} H(i^2)\lfloor\dfrac{n}{i^2}\rfloor
\]
可以线性筛求 \(H(i^2)\) 前缀和,整除分块,做到 \(n^{1/3}\) .
怎么求所有的 \(\text{sum}q(\lfloor \dfrac nt \rfloor)\) 呢:
- 对于阈值 \(<S\) 的线性筛前 \(S\) 个 \(q\) 。
- 对于 \(>S\) 的 \(n/S\) 个,直接 \(\sum_{i=1}^{n/S} (n/i)^{1/3} = n/S^{2/3}\) 求。
\(S=n^{3/5}\) 可以做到 \(n^{3/5}\) 求出以上。
原问题的转化还是很复杂的:
设 \(f(p^k) = p^{k\bmod 2}\) 。
\[\sum_{i=1}^n \sum_{j=1}^m q(ij)
\]
\[\sum_{d=1}^n g(d) \sum_{i\in [1,n],d|f(i)} \sum_{j\in [1,m],d|f(j)}q(i)q(j)
\]