TopCoder 12584 SemiPerfectPower

前言

  • 若是见到了,就是有道理了

题目描述

  • \([L,R]\) 中有多少整数,可以被分解成 \(ab^c\) 的结构

题解

  • 显然,只需要满足 \(c\le 3\) 即可。
  • 好,重点在于如何对 \(c=2\),\(c=3\) 计数。
  • 显然,二者存在重复的
  • \(ab^c\le n,a < b\) 易知:\(a\le \sqrt[c+1]{n}\)
  • 那我们枚举 \(c=2\) 的情况的 \(a\),把更多的时间留给 \(c=3\) 去去重,因为 \(c=3\) 时枚举 \(a\) 的范围小。
  • 额,考虑如何统计答案。\(by^3\) 显然我们只考虑在 \(b\) 最小的时候统计答案。
  • 理由:\(b\) 越小,\(y\) 越大,越容易满足 \(b<y\) 的条件。
  • 接着,考虑重复 \(ax^2=by^3\) 就不好。
    • 仔细考虑:
    • 明确 \(x\) 最大,\(y\) 最大,不如要求 \(a\) 没有平方因子,\(b\) 没有立方因子。
    • 诶,恰好,\(a,b\) 不大啊,那不妨预处理 \(P_2(x)=\) 没有平方因子,\(P_3(x)=\) 没有立方因子。
  • 到此,分析一下

\[ans=\sum_{b=1}^{\sqrt[4]{n}}P_3(b)\sum_{y=b+1}^{\sqrt[3]{\frac{n}{b}}}\sum_{a=1}^{\sqrt[3]{n}}P_2(a)[a|by^3][a<\frac{by^3}{a}] \]

  • \(O(n^{\frac{1}{4}+\frac{1}{3}+\frac{1}{3}})=O(n^{\frac{11}{12}})\)
  • 可若我们不枚举 \(a\) 而枚举 \(x\) 呢?\(x\) 仅有的限制是 \(x\le \sqrt[3]{n}\),但是注意到 \(y|x\) 好好想一想,\(x,y\) 都取得最大,那包有的啊
  • 故此,设 \(x=ty\)
  • 分析一下
  • $a(ty)^2 = by^3 $ 有 \(at^2=by\)\(a=\frac{by}{t^2}<ty\)\(b<t^3\),此时存在 \(ax^2=by^3\) 若想不存在,需满足 \([t^3\le b]\),诶,这个 \(t\) 的范围就很有前途了,至少比枚举 \(a\) 有多了
  • 注意别忘了,\(at^2=by\) 还有 \(t^2|by\),需满足 \([t^2|by]\)

\[ans=\sum_{b=1}^{\sqrt[4]{n}}P_3(b)\sum_{y=b+1}^{\sqrt[3]{\frac{n}{b}}}\sum_{t=1}^{\sqrt[3]{b}}P_2(\frac{by}{t^2})[t^2|by] \]

  • \(O(n^{\frac{1}{4}+\frac{1}{3}+\frac{1}{12}})=O(n^{\frac{2}{3}})\)

  • 想想怎们优化,注意到 \(P_2(\frac{by}{t^2})\) 把所有枚举量揉在了一起,尝试分离,$b\to y\to $ 式子,\(b\to t\to\) 式子,显然 \(b\) 是比较远

  • 若把 \(yb\) 分开,与 \(y\) 有关的能预处理的话,那就大大降低了复杂度。

  • 不妨设 \(b'=\frac{b}{gcd(b,t^2)}\)\(t'=\frac{t^2}{gcd(b,t^2)}\)

  • \(P_2(\frac{by}{t^2})[t^2|by]\) 化为 \(P_2(b'\cdot\frac{y}{t'})[t'|y]\) 注意到 \(P_2\) 是积性函数,因为只有 \(P_2\) 互质的时候才有值所以可以,\(P_2(b')P_2(\frac{y}{t'})[t'|y][gcd(b',\frac{y}{t'})=1]\)

  • 不优美,不妨设 \(y=t'y'\)\(P_2(b')P_2(y')[gcd(b',y')=1]\),诶这样的话我们是不是可以不枚举 \(y\) 而去枚举 \(y'\)

\[ans=\sum_{b=1}^{\sqrt[4]{n}}P_3(b)\sum_{t=1}^{\sqrt[3]{b}}P_2(b')\sum_{y'=\frac{b}{t'}+1}^{\frac{\sqrt[3]{\frac{n}{b}}}{t'}}P_2(y')[gcd(b',y')=1] \]

  • 额,里面还没有完全独立开,把 \([gcd(b',y')=1]\) 叉开

\[ans=\sum_{b=1}^{\sqrt[4]{n}}P_3(b)\sum_{t=1}^{\sqrt[3]{b}}P_2(b')\sum_{y'=\frac{b}{t'}+1}^{\frac{\sqrt[3]{\frac{n}{b}}}{t'}}P_2(y')\sum_{c|gcd(b',y')}\mu(c) \]

  • 然后枚举 \(c|b'\)\(y'=\) \(c\) 的倍数

\[ans=\sum_{b=1}^{\sqrt[4]{n}}P_3(b)\sum_{t=1}^{\sqrt[3]{b}}P_2(b')\sum_{c|b'}\mu(c)\sum_{y'=\frac{b}{t'c}+1}^{\frac{\sqrt[3]{\frac{n}{b}}}{t'c}}P_2(cy') \]

  • 嘿嘿这样的话,\(yb\) 成功独立,后半部分 \(\sum_{y'=\frac{b}{t'c}+1}^{\frac{\sqrt[3]{\frac{n}{b}}}{t'c}}P_2(cy')\) 其实是以 \(c\) 分类的 \(P_2\) 的和,可以预处理,复杂度,大概 \(O(n^{\frac{1}{3}})\) 乘枚举约数,我不会算的个数
posted @ 2025-02-20 21:00  LUHCUH  阅读(55)  评论(1)    收藏  举报