\(\verb|bzoj2440 [中山市选2011]完全平方数|\)
求第 \(k\) 个不是完全平方数的正整数倍的数,\(T\) 组询问
\(T\leq50,\ k\leq10^9\)
容斥+莫比乌斯函数
首先二分,将原问题转化为
求 \([1,\ n]\) 中不是完全平方数的正整数倍的数的个数
即 \(\verb|SP4168 SQFREE - Square-free integers|\)
现在考虑原问题的逆问题,即 \([1,\ n]\) 中是完全平方数的正整数倍的数的个数,由容斥原理得到 \[\lfloor\frac{n}{2^2}\rfloor+\lfloor\frac{n}{3^2}\rfloor+\lfloor\frac{n}{5^2}\rfloor-\lfloor\frac{n}{6^2}\rfloor+\lfloor\frac{n}{7^2}\rfloor-\lfloor\frac{n}{10^2}\rfloor+\cdots\]
\(\therefore\) 原式 \(=\) \[n-\lfloor\frac{n}{2^2}\rfloor-\lfloor\frac{n}{3^2}\rfloor-\lfloor\frac{n}{5^2}\rfloor+\lfloor\frac{n}{6^2}\rfloor-\lfloor\frac{n}{7^2}\rfloor+\lfloor\frac{n}{10^2}\rfloor+\cdots\]
现在观察 \(\lfloor\frac{n}{i^2}\rfloor\) 的系数:\[1\times n+(-1)\times\lfloor\frac{n}{2^2}\rfloor+(-1)\times\lfloor\frac{n}{3^2}\rfloor+0\times\lfloor\frac{n}{4^2}\rfloor+(-1)\times\lfloor\frac{n}{5^2}\rfloor+1\times\lfloor\frac{n}{6^2}\rfloor+(-1)\times\lfloor\frac{n}{7^2}\rfloor+0\times\lfloor\frac{n}{8^2}\rfloor+\cdots\]
有没有想到那个熟悉的函数 \[\mu(i)=\begin{cases}1&&(i=1)\\(-1)^k&&(i=\prod p_k,\ p_k\in prime)\\0&&other\end{cases}\]
易证原式 \(\lfloor\frac{n}{i^2}\rfloor\) 的系数即为 \(\mu(i)\)
即求 \[\displaystyle\sum_{i=1}^\sqrt n \mu(i)\lfloor\frac{n}{i^2}\rfloor\]
可以发现最终答案 \(ans\) 满足 \(k\le ans\leq 2\times k\)
因此时间复杂度 \(O(T\log k\sqrt k)\),空间复杂度 \(O(\sqrt k)\)