hdu 1695 莫比乌斯反演

hdu 1695莫比乌斯反演题意:给出a,b,c,d,k, 求满足a <= x <= b && c <= y <= d && gcd(x,y)=k 的数对(x,y)的对数。限制:a=c=1; 0 < b,c <= 1e5; (n1,n2) 和 (n2,n1) 算为同种情况思路:其实是求满足1 <= x <= b/k && 1 <= y <= d/k && gcd(x,y)=1 的 数对(x,y)的对数。莫比乌斯反演入门题设f(k)为gcd(x,y)=k的数对(x,y)的对数,,我们要求的是f(1)设F(k)为gcd(x,y)为k的倍数的数对(x,y)的对数,可以想到F(k)=floor(b/k)*floor(d/k),由莫比乌斯反演得:令lim=min(b/k,d/k)f(1)=mu[1]*F(1) + mu[2]*F[2] + … + mu[lim]*F(lim)因为(n1,n2)和(n2,n1)算为同一种情况,所以最后结果还要减掉重复的情况。ps:这道题还可以用容斥做。

只要看得开放得下,何愁没有快乐的春莺在啼鸣,

hdu 1695 莫比乌斯反演

相关文章:

你感兴趣的文章:

标签云: