没做到过要用这玩意儿的。。。

线筛约数和

约数和的定义

定义如它的名字所示,表达式如下:

σ1(x)=∑d|xdσ1(x)=∑d|xd

\sigma_1(x)=\sum_{d|x}d

约数和的性质

根据算术基本定理,计算约数和有个公式,设x=pa11pa22...pannx=p1a1p2a2...pnanx=p_1^{a_1}p_2^{a_2}...p_n^{a_n},那么有:

σ1(x)=(1+p1+p21+...+pa11)(1+p2+p22+...+pa22)...(1+pn+p2n+...+pann)σ1(x)=(1+p1+p12+...+p1a1)(1+p2+p22+...+p2a2)...(1+pn+pn2+...+pnan)

\sigma_1(x)=(1+p_1+p_1^2+...+p_1^{a_1})(1+p_2+p_2^2+...+p_2^{a_2})...(1+p_n+p_n^2+...+p_n^{a_n})

积性也很好证,两个互质的数拥有两个不同的质因数集合,根据上面的公式,显然是可以直接乘起来的。

其他的性质因为没用过,也不太了解。。。

约数和的线筛

按照惯例,设T=i×p[j]T=i×p[j]T=i\times p[j]。

根据线筛σ0(x)σ0(x)\sigma_0(x)的套路,我们也开一个数组prod[i]prod[i]prod[i]表示以111为首项,i" role="presentation" style="position: relative;">iii的最小质因数为公比,项数为iii的最小质因数的指数的等比数列的和。

1.当T" role="presentation" style="position: relative;">TTT为素数时,TTT的因数只有1" role="presentation" style="position: relative;">111和它本身,所以σ1(T)=prod[i]=T+1σ1(T)=prod[i]=T+1\sigma_1(T)=prod[i]=T+1;

2.当TTT拥有多个最小质因子(即i mod p[j]=0" role="presentation" style="position: relative;">i mod p[j]=0i mod p[j]=0i\ mod\ p[j]=0)时,因为p[j]p[j]p[j]为iii的最小质因子,那么T" role="presentation" style="position: relative;">TTT与iii相比,就是在1+p[j]+p[j]2+...+p[j]n" role="presentation" style="position: relative;">1+p[j]+p[j]2+...+p[j]n1+p[j]+p[j]2+...+p[j]n1+p[j]+p[j]^2+...+p[j]^n这个等比数列里比iii多了一个p[j]n+1" role="presentation" style="position: relative;">p[j]n+1p[j]n+1p[j]^{n+1},所以有:prod[T]=prod[i]×p[j]+1,σ1(T)=σ1(i)×prod[T]prod[i]prod[T]=prod[i]×p[j]+1,σ1(T)=σ1(i)×prod[T]prod[i]prod[T]=prod[i]\times p[j]+1,\sigma_1(T)=\sigma_1(i)\times\frac{prod[T]}{prod[i]};

3.当TTT的最小质因子都只有一个(即i mod p[j]≠0" role="presentation" style="position: relative;">i mod p[j]≠0i mod p[j]≠0i\ mod\ p[j]≠0)时,p[j]p[j]p[j]为TTT的最小质因子,所以有prod[T]=p[j]+1,σ1(T)=σ(i)×(p[j]+1)" role="presentation" style="position: relative;">prod[T]=p[j]+1,σ1(T)=σ(i)×(p[j]+1)prod[T]=p[j]+1,σ1(T)=σ(i)×(p[j]+1)prod[T]=p[j]+1,\sigma_1(T)=\sigma(i)\times (p[j]+1);

综上:

σ1(T)=⎧⎩⎨⎪⎪⎪⎪T+1σ1(i)×prod[T]prod[i]σ1(T)=σ(i)×(p[j]+1)T∈Primei mod p[j]=0i mod p[j]≠0σ1(T)={T+1T∈Primeσ1(i)×prod[T]prod[i]imodp[j]=0σ1(T)=σ(i)×(p[j]+1)imodp[j]≠0

\sigma_1(T)=\left\{ \begin{array}\\ T+1&\\ \sigma_1(i)\times\frac{prod[T]}{prod[i]}&\\ \sigma_1(T)=\sigma(i)\times (p[j]+1)&\end{array}\right.

代码
void get()
{R i,j,t;check[1]=prod[1]=sumd[1]=1;for(i=2;i<=N;++i){if(!check[i])prod[i]=sumd[i]=1+i,p[++p[0]]=i;for(j=1;j<=p[0];++j){t=i*p[j];if(t>N)break;check[t]=1;if(i%p[j]==0){prod[t]=prod[i]*p[j]+1;sumd[t]=sumd[i]/prod[i]*prod[t];break;}prod[t]=p[j]+1,sumd[t]=sumd[i]*(p[j]+1);}sumd[i]+=sumd[i-1];}
}

[线筛五连]线筛约数和相关推荐

  1. 怎么区分五类线、超五类线和六类线

    打个广告, ---------------------------------------------------------------------------------------------- ...

  2. 【如何从外观上区分网线的五类线、超五类线和六类线?】

    五类线 线上写着CAT 5,传输带宽为100MHz,现在基本已经被超五类线替代. 超五类线 线上写着CAT 5e,传输带宽为1000Mb/s,已经可以支持POE技术.实际手感还是非常简陋. 六类线 线 ...

  3. 根据K线图与移动平均线的位置决定卖出点五绝招

    根据K线图与移动平均线的位置决定卖出点卖出信号一 此信号具有以下特征: 1.移动平均线呈大幅度上升趋势. 2.经过一段上升后,移动平均线开始走平. 3.当股价由上而下跌破走平的移动平均线时,便是卖出信 ...

  4. 北京地铁五号线全攻略 23座车站乘坐细节大起底

    5号线就在附近,偶尔出远门需要用到,但又对车站位置不熟悉,转此帖,备用 转自 http://news.xinhuanet.com/newscenter/2007-10/06/content_68370 ...

  5. 一步一步教你写股票走势图——K线图五(高亮联动二)

    目录 一步一步教你写股票走势图--分时图一(概述) 一步一步教你写股票走势图--分时图二(自定义xy轴) 一步一步教你写股票走势图--分时图三(对齐图表.自定义柱状图高亮) 一步一步教你写股票走势图- ...

  6. 超五类屏蔽双绞线和计算机电缆区别,五类线、六类线、超五类线的定义和区别...

    五类线的标识是"CAT5",带宽100M ,适用于百兆以下的网:超五类线的标识是"CAT5E",带宽155M,是目前的主流产品:六类线的标识是" CA ...

  7. 千兆网络中——使用五类线、超五类线和六类线的区别

    去年入手了一台Seagate的NAS,Central系列产品,3T存储空间.买回来后,一直没时间好好研究,直接插上就用了.内网速度一直维持在10M-15M左右.今年618换了款千兆路由器,速度瞬间提升 ...

  8. Pygame(五)画线

    Pygame(五)画线 前情提要 作业代码 import sys import pygame from math import pidef homework():pygame.init()screen ...

  9. 67.深度解密网络项目五:线上和线下营销结合的“社交零售”和“社区团购”

    网络营销推广技术.技巧深度解密(网络项目五)指南: 1.本文档适合零基础以及互联网营销推广工作者,主要讲解关于社区团购项目的问题. 2.原创版权文档,任何抄袭或者全部.部分模仿都是侵权行为. 3.敬畏 ...

  10. 浅析双绞线中五类线每根线的功能

    双绞线由两根具有绝缘保护层的铜导线组成.两根线安按照一定的密度相互绞在一起,就可以改变导线的电气特性,从而降低信号的干扰程度.双绞线电缆比较柔软,便于在墙角等不规则地方施工,但信号的衰减比较大.在大多 ...

最新文章

  1. 用ASP.NET上传图片并生成带版权信息的缩略图
  2. insert获取主键、联合关联查询
  3. 使用Boxfuse为您的REST API设置https
  4. Linux系统【三】回收子进程
  5. 废旧光盘手工小制作_废旧利用 | 幼儿园手工卷纸筒制作大全,超实用
  6. 得推B2B2C商城源码v4.1
  7. Spark文本文件输入输出
  8. 源型输入和漏型输入差别及其接线
  9. 白鹭引擎 android9,【安卓】手把手教你Egret引擎一键发布华为快游戏
  10. Fiddler 抓取手机数据包,代理连接成功,但是手机无法上网
  11. 在 OpenBSD 系统下的安装PHP
  12. 小罗说敏捷 | 使用关键路径法优化项目进度管理
  13. 26岁程序员猝死,再次提醒:有几个前兆其实很显眼
  14. 南柯服务器压力,性能测试新手误区(四):一切来自录制
  15. 【深入理解JVM】:HotSpot垃圾收集器
  16. 去雾模块dehaze.py(可直接调用)
  17. ppt编写方法和指南
  18. 熊猫阵亡,陌陌、YY财报背后的直播江湖仍在
  19. 寓意深刻的18个故事
  20. 物联网专科专业必修课程_物联网工程专业主要课程大纲

热门文章

  1. originos是鸿蒙系统吗,originos系统是安卓吗
  2. php实现先序、中序、后序遍历二叉树
  3. 查询字符串中子字符串所有出现位置
  4. GlusterFS卷的种类
  5. easyui textbox获取焦点事件
  6. Python标准库11 多进程探索 (multiprocessing包)
  7. Sams_Teach yourself XXX in XXX days
  8. html img 自动缩放,网页HTML 5图片自适应屏幕 img等比例缩放大小代码
  9. dubbo内核简介(附部分源码解读)
  10. RocketMQ(十五) RocketMQ如何保证消息的可靠性?