[SDOI2012] Longge 的问题
https://www.luogu.com.cn/problem/P2303
分析:注意到gcd(i, n)一定是n的约数,而n的约数只有O(sqrt(n))个。
正难则反。反过来考虑,不是枚举数,计算gcd;而是枚举gcd,计算个数。
考虑枚举n的约数(设为d),再求出满足gcd(i,n)=d的i有多少个。
假设gcd(i,n)=d,则gcd(i/d, n/d)=1
因此共有ϕ(n/d)个i满足条件。
质因数分解求出每个ϕ(n/d),然后✖d。
总复杂度为 \(\sum_{d|n}\sqrt d\approx\sqrt n(?)\)。