[线筛五连]线筛约数和
没做到过要用这玩意儿的。。。
线筛约数和
约数和的定义
定义如它的名字所示,表达式如下:
\sigma_1(x)=\sum_{d|x}d
约数和的性质
根据算术基本定理,计算约数和有个公式,设x=pa11pa22...pannx=p1a1p2a2...pnanx=p_1^{a_1}p_2^{a_2}...p_n^{a_n},那么有:
\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);
综上:
\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];}
}
[线筛五连]线筛约数和相关推荐
- 怎么区分五类线、超五类线和六类线
打个广告, ---------------------------------------------------------------------------------------------- ...
- 【如何从外观上区分网线的五类线、超五类线和六类线?】
五类线 线上写着CAT 5,传输带宽为100MHz,现在基本已经被超五类线替代. 超五类线 线上写着CAT 5e,传输带宽为1000Mb/s,已经可以支持POE技术.实际手感还是非常简陋. 六类线 线 ...
- 根据K线图与移动平均线的位置决定卖出点五绝招
根据K线图与移动平均线的位置决定卖出点卖出信号一 此信号具有以下特征: 1.移动平均线呈大幅度上升趋势. 2.经过一段上升后,移动平均线开始走平. 3.当股价由上而下跌破走平的移动平均线时,便是卖出信 ...
- 北京地铁五号线全攻略 23座车站乘坐细节大起底
5号线就在附近,偶尔出远门需要用到,但又对车站位置不熟悉,转此帖,备用 转自 http://news.xinhuanet.com/newscenter/2007-10/06/content_68370 ...
- 一步一步教你写股票走势图——K线图五(高亮联动二)
目录 一步一步教你写股票走势图--分时图一(概述) 一步一步教你写股票走势图--分时图二(自定义xy轴) 一步一步教你写股票走势图--分时图三(对齐图表.自定义柱状图高亮) 一步一步教你写股票走势图- ...
- 超五类屏蔽双绞线和计算机电缆区别,五类线、六类线、超五类线的定义和区别...
五类线的标识是"CAT5",带宽100M ,适用于百兆以下的网:超五类线的标识是"CAT5E",带宽155M,是目前的主流产品:六类线的标识是" CA ...
- 千兆网络中——使用五类线、超五类线和六类线的区别
去年入手了一台Seagate的NAS,Central系列产品,3T存储空间.买回来后,一直没时间好好研究,直接插上就用了.内网速度一直维持在10M-15M左右.今年618换了款千兆路由器,速度瞬间提升 ...
- Pygame(五)画线
Pygame(五)画线 前情提要 作业代码 import sys import pygame from math import pidef homework():pygame.init()screen ...
- 67.深度解密网络项目五:线上和线下营销结合的“社交零售”和“社区团购”
网络营销推广技术.技巧深度解密(网络项目五)指南: 1.本文档适合零基础以及互联网营销推广工作者,主要讲解关于社区团购项目的问题. 2.原创版权文档,任何抄袭或者全部.部分模仿都是侵权行为. 3.敬畏 ...
- 浅析双绞线中五类线每根线的功能
双绞线由两根具有绝缘保护层的铜导线组成.两根线安按照一定的密度相互绞在一起,就可以改变导线的电气特性,从而降低信号的干扰程度.双绞线电缆比较柔软,便于在墙角等不规则地方施工,但信号的衰减比较大.在大多 ...
最新文章
- 用ASP.NET上传图片并生成带版权信息的缩略图
- insert获取主键、联合关联查询
- 使用Boxfuse为您的REST API设置https
- Linux系统【三】回收子进程
- 废旧光盘手工小制作_废旧利用 | 幼儿园手工卷纸筒制作大全,超实用
- 得推B2B2C商城源码v4.1
- Spark文本文件输入输出
- 源型输入和漏型输入差别及其接线
- 白鹭引擎 android9,【安卓】手把手教你Egret引擎一键发布华为快游戏
- Fiddler 抓取手机数据包,代理连接成功,但是手机无法上网
- 在 OpenBSD 系统下的安装PHP
- 小罗说敏捷 | 使用关键路径法优化项目进度管理
- 26岁程序员猝死,再次提醒:有几个前兆其实很显眼
- 南柯服务器压力,性能测试新手误区(四):一切来自录制
- 【深入理解JVM】:HotSpot垃圾收集器
- 去雾模块dehaze.py(可直接调用)
- ppt编写方法和指南
- 熊猫阵亡,陌陌、YY财报背后的直播江湖仍在
- 寓意深刻的18个故事
- 物联网专科专业必修课程_物联网工程专业主要课程大纲