专栏文章

题解:CF2091E Interesting Ratio

CF2091E题解参与者 1已保存评论 0

文章操作

快速查看文章及其快照的属性,并进行相关操作。

当前评论
0 条
当前快照
1 份
快照标识符
@mipt3ysw
此快照首次捕获于
2025/12/03 17:30
3 个月前
此快照最后确认于
2025/12/03 17:30
3 个月前
查看原文

Statement

求小于等于 nn 的所有自然数组成的数对 (a,b)(a,b) 中,lcm(a,b)gcd(a,b)\mathrm{lcm}(a,b)\over\gcd(a,b) 是质数的无序对的个数。

Solution

注意到 a=ba=b 肯定不行,那么不妨令 a<ba<b
lcm(a,b)gcd(a,b)=lcm(a,b)gcd(a,b)gcd(a,b)gcd(a,b)=abgcd(a,b)gcd(a,b)=agcd(a,b)×bgcd(a,b){\mathrm{lcm}(a,b)\over\gcd(a,b)} = {\mathrm{lcm}(a,b)\gcd(a,b)\over\gcd(a,b)\gcd(a,b)}={ab\over\gcd(a,b)\gcd(a,b)} = {a\over \gcd(a,b)}\times {b\over\gcd(a,b)}
两个整数的乘积是质数只有一种情况:小的那个是 11。因此 agcd(a,b)=1{a\over\gcd(a,b)} = 1,也就是说 a=gcd(a,b),b=lcm(a,b)a = \gcd(a, b), b= \mathrm{lcm}(a, b)
换言之 (a,b)(a,b) 合法当且仅当 bab\over a 是个质数。那么对于每个 bb,合法的 aa 的和 bb 的质因数一一对应。
枚举 bb 可以得到答案就是 d(i)d(i) 的前缀和,其中 d(i)d(i) 表示 ii 的不同质因数个数。
dd 能够有很多方法处理。一个比较简单的做法是做个线性筛。每次用质数 pp 筛合数的时候,若合数的另外一个乘数 qq 不是 pp 的倍数,则 d(pq)=d(q)+1d(pq) = d(q)+1。否则 d(pq)=d(q)d(pq) = d(q)。答案输出 dd 的前缀和即可。

Code

评论

0 条评论,欢迎与作者交流。

正在加载评论...