首先显然二分答案。 如果二分到的数为 n,考虑设 f(x) 表示 n 以内最大平方因子为 x2 的数的个数。
设 F(x)=∑x|df(d)=⌊nx2⌋。
有 f(x)=∑x|dμ(dx)f(d)。
以上为莫反公式。
然后求出 f(1)=⌊√n⌋∑i=1μ(i)⌊ni2⌋ 就是我们用来判定答案的东西了。
代码:
1 |
|
首先显然二分答案。 如果二分到的数为 n,考虑设 f(x) 表示 n 以内最大平方因子为 x2 的数的个数。
设 F(x)=∑x|df(d)=⌊nx2⌋。
有 f(x)=∑x|dμ(dx)f(d)。
以上为莫反公式。
然后求出 f(1)=⌊√n⌋∑i=1μ(i)⌊ni2⌋ 就是我们用来判定答案的东西了。
代码:
1 | #include <cstdio> |
Related Issues not found
Please contact @Alpha1022 to initialize the comment