博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
莫比乌斯反演
阅读量:6564 次
发布时间:2019-06-24

本文共 698 字,大约阅读时间需要 2 分钟。

莫比乌斯函数线性筛代码:

1 bool not_prime[maxn]; 2 int prime[maxn]; 3 int Mob[maxn]; 4 void Mobius_sieve(int n) 5 { 6     int tot = 0; 7     not_prime[1] = 1; 8     Mob[1] = 1; 9     for(int i = 2; i <= n; i++)10     {11         if(!not_prime[i])prime[tot++] = i, Mob[i] = - 1;12         for(int j = 0; j < tot && 1LL * prime[j] * i <= n; j++)13         {14             not_prime[prime[j] * i] = 1;//每个合数x由它最小素因子prime[j]筛掉15             Mob[i * prime[j]] = (i % prime[j] ? -Mob[i]: 0);16             if(i % prime[j] == 0)break;//如果i % prime[j] == 0,不停止循环17             //那么接下来将用prime[j+1]筛去i*prime[j+1],但实际上应该用prime[i]筛去,因为i%prime[j]==018         }19     }20 }

 

转载于:https://www.cnblogs.com/fzl194/p/9642117.html

你可能感兴趣的文章
激活modelsim se 10.4 时运行patch_dll.bat不能生成TXT
查看>>
17秋 软件工程 Alpha 事后诸葛亮会议
查看>>
线性空间
查看>>
疑似checkpoint堵塞数据库连接
查看>>
Node.js中针对中文的查找和替换无效的解决方法
查看>>
理解指针的关键
查看>>
如何查看Ubuntu下已安装包版本号
查看>>
我的那些年(2)~我毕业了
查看>>
VS2017 配置ImageMagick
查看>>
Hive任务优化--控制hive任务中的map数和reduce数
查看>>
[摄影]上海往事
查看>>
『原创』c#实现文件加密、解密及文件拖拽至程序图标直接打开
查看>>
【Leetcode】Search in Rotated Sorted Array
查看>>
redis3.0.0 集群安装详细步骤
查看>>
如何在Linux命令行中创建以及展示演示稿
查看>>
FutureTask——另一种闭锁的实现
查看>>
Android和MVC
查看>>
Linux 用户和用户组管理
查看>>
tomcat架构分析(valve源码导读)
查看>>
spring中InitializingBean接口使用理解(转)
查看>>