莫比乌斯函数
Posted tech-chen
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了莫比乌斯函数相关的知识,希望对你有一定的参考价值。
Euler筛法求解莫比乌斯函数:
1 void mobius() 2 { 3 memset(visit,false,sizeof(visit)); 4 mu[1]=1; 5 cnt=0; 6 for(int i=2;i<=N;++i) 7 { 8 if(!visit[i]) 9 { 10 prime[++cnt]=i; 11 mu[i]=-1;/*只有一个质因子,就是它本身,所以mu[i]=-1*/ 12 } 13 for(int j=1;j<=cnt&&i*prime[j]<=N;++j) 14 { 15 visit[i*prime[j]]=false; 16 if(i%prime[j])/*如果i不能*/ 17 { 18 mu[i*prime[j]]=-mu[i]; 19 } 20 else 21 { 22 mu[i*prime[j]]=0;break; 23 } 24 } 25 } 26 }
好文章:http://blog.csdn.net/acdreamers/article/details/8542292
以上是关于莫比乌斯函数的主要内容,如果未能解决你的问题,请参考以下文章