[51 Nod 1584] 加权约数和
题意
求∑i=1N∑j=1Nmax(i,j)⋅σ1(ij)\large \sum_{i=1}^N\sum_{j=1}^Nmax(i,j)\cdot\sigma_1(ij)i=1∑Nj=1∑Nmax(i,j)⋅σ1(ij)
其中
1≤N≤1061\le N\le10^61≤N≤106
1≤T≤5⋅1041\le T\le5\cdot10^41≤T≤5⋅104
σ1(n)\sigma_1(n)σ1(n)表示nnn的约数和
题目分析
令A=∑i=1n∑j=1ii⋅σ1(ij),B=∑i=1ni⋅σ1(i2)A=\sum_{i=1}^n\sum_{j=1}^ii\cdot\sigma_1(ij),B=\sum_{i=1}^ni\cdot\sigma_1(i^2)A=∑i=1n∑j=1ii⋅σ1(ij),B=∑i=1ni⋅σ1(i2),则Ans=2A−BAns=2A-BAns=2A−B
且有
A=∑i=1ni⋅∑j=1i∑x∣i∑y∣jx⋅j/y[(x,y)=1]=∑i=1ni⋅∑j=1i∑x∣i∑y∣jx⋅j/y∑d∣(x,y)μ(d)=∑d=1nμ(d)∑d∣xx∑x∣ii∑d∣y∑y∣jijy=∑d=1nμ(d)∑x=1⌊nd⌋dx∑x∣i⌊nd⌋di∑y=1⌊nd⌋∑y∣jidjdy=∑d=1nμ(d)d2∑i=1⌊nd⌋i∑x∣ix∑y=1⌊nd⌋∑y∣jiy=∑d=1nμ(d)d2∑i=1⌊nd⌋i⋅σ1(i)∑j=1iσ1(j)=∑d=1nμ(d)d2∑i=1⌊nd⌋i⋅σ1(i)⋅Sσ1(i)\large
\begin{aligned}
A&=\sum_{i=1}^ni\cdot\sum_{j=1}^i\sum_{x|i}\sum_{y|j}x\cdot j/y[(x,y)=1]\\
&=\sum_{i=1}^ni\cdot\sum_{j=1}^i\sum_{x|i}\sum_{y|j}x\cdot j/y\sum_{d|(x,y)}\mu(d)\\
&=\sum_{d=1}^n\mu(d)\sum_{d|x}x\sum_{x|i}i\sum_{d|y}\sum_{y|j}^i\frac jy\\
&=\sum_{d=1}^n\mu(d)\sum_{x=1}^{\lfloor\frac nd\rfloor}dx\sum_{x|i}^{\lfloor\frac nd\rfloor}di\sum_{y=1}^{\lfloor\frac nd\rfloor}\sum_{y|j}^i\frac{dj}{dy}\\
&=\sum_{d=1}^n\mu(d)d^2\sum_{i=1}^{\lfloor\frac nd\rfloor}i\sum_{x|i}x\sum_{y=1}^{\lfloor\frac nd\rfloor}\sum_{y|j}^iy\\
&=\sum_{d=1}^n\mu(d)d^2\sum_{i=1}^{\lfloor\frac nd\rfloor}i\cdot\sigma_1(i)\sum_{j=1}^{i}\sigma_1(j)\\
&=\sum_{d=1}^n\mu(d)d^2\sum_{i=1}^{\lfloor\frac nd\rfloor}i\cdot\sigma_1(i)\cdot S_{\sigma_1}(i)\\\end{aligned}A=i=1∑ni⋅j=1∑ix∣i∑y∣j∑x⋅j/y[(x,y)=1]=i=1∑ni⋅j=1∑ix∣i∑y∣j∑x⋅j/yd∣(x,y)∑μ(d)=d=1∑nμ(d)d∣x∑xx∣i∑id∣y∑y∣j∑iyj=d=1∑nμ(d)x=1∑⌊dn⌋dxx∣i∑⌊dn⌋diy=1∑⌊dn⌋y∣j∑idydj=d=1∑nμ(d)d2i=1∑⌊dn⌋ix∣i∑xy=1∑⌊dn⌋y∣j∑iy=d=1∑nμ(d)d2i=1∑⌊dn⌋i⋅σ1(i)j=1∑iσ1(j)=d=1∑nμ(d)d2i=1∑⌊dn⌋i⋅σ1(i)⋅Sσ1(i)
B=∑i=1ni∑x∣i∑y∣ix⋅i/y[(x,y)=1]=∑i=1ni⋅∑x∣i∑y∣ix⋅i/y∑d∣(x,y)μ(d)=∑d=1nμ(d)∑d∣ii∑d∣x∣i∑d∣y∣ix⋅iy=∑d=1nμ(d)∑i=1⌊nd⌋di∑x∣i∑y∣idx⋅didy=∑d=1nμ(d)d2∑i=1⌊nd⌋i∑x∣ix∑y∣iiy=∑d=1nμ(d)d2∑i=1⌊nd⌋i∑x∣ix∑y∣iy=∑d=1nμ(d)d2∑i=1⌊nd⌋iσ1(i)2\large
\begin{aligned}
B&=\sum_{i=1}^ni\sum_{x|i}\sum_{y|i}x\cdot i/y[(x,y)=1]\\
&=\sum_{i=1}^ni\cdot\sum_{x|i}\sum_{y|i}x\cdot i/y\sum_{d|(x,y)}\mu(d)\\
&=\sum_{d=1}^n\mu(d)\sum_{d|i}i\sum_{d|x|i}\sum_{d|y|i}x\cdot \frac iy\\
&=\sum_{d=1}^n\mu(d)\sum_{i=1}^{\lfloor\frac nd\rfloor}di\sum_{x|i}\sum_{y|i}dx\cdot \frac {di}{dy}\\
&=\sum_{d=1}^n\mu(d)d^2\sum_{i=1}^{\lfloor\frac nd\rfloor}i\sum_{x|i}x\sum_{y|i}\frac {i}{y}\\
&=\sum_{d=1}^n\mu(d)d^2\sum_{i=1}^{\lfloor\frac nd\rfloor}i\sum_{x|i}x\sum_{y|i}y\\
&=\sum_{d=1}^n\mu(d)d^2\sum_{i=1}^{\lfloor\frac nd\rfloor}i\sigma_1(i)^2\\
\end{aligned}B=i=1∑nix∣i∑y∣i∑x⋅i/y[(x,y)=1]=i=1∑ni⋅x∣i∑y∣i∑x⋅i/yd∣(x,y)∑μ(d)=d=1∑nμ(d)d∣i∑id∣x∣i∑d∣y∣i∑x⋅yi=d=1∑nμ(d)i=1∑⌊dn⌋dix∣i∑y∣i∑dx⋅dydi=d=1∑nμ(d)d2i=1∑⌊dn⌋ix∣i∑xy∣i∑yi=d=1∑nμ(d)d2i=1∑⌊dn⌋ix∣i∑xy∣i∑y=d=1∑nμ(d)d2i=1∑⌊dn⌋iσ1(i)2
∴Ans=2A−B=\large
\begin{aligned}
\therefore Ans=2A-B&=
\end{aligned}∴Ans=2A−B=
再次拖更…
[51 Nod 1584] 加权约数和的更多相关文章
- 51NOD 1584 加权约数和 [莫比乌斯反演 转化 Trick]
1584 加权约数和 题意:求\(\sum_{i=1}^{N} \sum_{j=1}^{N} {\max(i,j)\cdot \sigma(i\cdot j)}\) 多组数据\(n \le 10^6, ...
- 51nod 1584 加权约数和 约数和函数小trick 莫比乌斯反演
LINK:加权约数和 我曾经一度认为莫比乌斯反演都是板子题. 做过这道题我认输了 不是什么东西都是板子. 一个trick 设\(s(x)\)为x的约数和函数. 有 \(s(i\cdot j)=\sum ...
- [51Nod 1584] 加权约数和
Description 在整理以前的试题时,他发现了这样一道题目:"求 \(\sum\sigma(i)\),其中 \(1≤i≤N\),\(σ(i)\) 表示 \(i\) 的约数之和.&quo ...
- 51nod 1584加权约数和
学到了好多东西啊这题... https://blog.csdn.net/sdfzyhx/article/details/72968468 #include<bits/stdc++.h> u ...
- 51 nod 1439 互质对(Moblus容斥)
1439 互质对 题目来源: CodeForces 基准时间限制:2 秒 空间限制:131072 KB 分值: 160 难度:6级算法题 有n个数字,a[1],a[2],…,a[n].有一个集合,刚开 ...
- 51 nod 1610 路径计数(Moblus+dp)
1610 路径计数 基准时间限制:1 秒 空间限制:131072 KB 分值: 80 难度:5级算法题 路径上所有边权的最大公约数定义为一条路径的值. 给定一个有向无环图.T次修改操作,每次修改一 ...
- 51 nod 1495 中国好区间
1495 中国好区间 基准时间限制:0.7 秒 空间限制:131072 KB 分值: 80 难度:5级算法题 阿尔法在玩一个游戏,阿尔法给出了一个长度为n的序列,他认为,一段好的区间,它的长度是& ...
- 51 nod 1427 文明 (并查集 + 树的直径)
1427 文明 题目来源: CodeForces 基准时间限制:1.5 秒 空间限制:131072 KB 分值: 160 难度:6级算法题 安德鲁在玩一个叫“文明”的游戏.大妈正在帮助他. 这个游 ...
- 51 nod 1055 最长等差数列(dp)
1055 最长等差数列 基准时间限制:2 秒 空间限制:262144 KB 分值: 80 难度:5级算法题 N个不同的正整数,找出由这些数组成的最长的等差数列. 例如:1 3 5 6 8 9 ...
随机推荐
- C++实现base64编解码
Base64是常见的加密算法,代码实现了基于C++的对于base64的编码和解码. 其中注释掉的部分为编码部分,取消注释将解码部分注释掉即可实现编码,反之可以实现解码. #include <st ...
- 【Python爬虫案例学习2】python多线程爬取youtube视频
转载:https://www.cnblogs.com/binglansky/p/8534544.html 开发环境: python2.7 + win10 开始先说一下,访问youtube需要那啥的,请 ...
- stm32f103c8串口USART1发送多一字节
用UART写了一段Bootloader代码,遇到了一个很奇怪的现象. 代码如下:简单介绍一下就是先统一配置MCU的IO端口,然后配置串口参数,然后循环发送‘0’和'\r’.16进制是0x30 0x0d ...
- zbar android sdk源码编译
zbar,解析条码和二维码的又一利器,zbar代码是用c语言编写的,如果想在Android下使用zbar类库,就需要使用NDK将zbar编译成.so加载使用,zbar编译好的Android SDK可以 ...
- Tomcat组件梳理--Catalina
Tomcat组件梳理--Catalina 1.定义和功能 Catalina是Tomcat的核心组件,是Servlet容器,Catalina包含了所有的容器组件,其他模块均为Catalina提供支撑.通 ...
- Date类的相关方法记录
1.Date类中的时间单位是毫秒,System.currentTimeMills()方法就是获取当前时间到1970年1月1日0时0分0秒(西方时间)的毫秒数. public class Test6 { ...
- Java自学-数组 复制数组
Java 如何复制数组 数组的长度是不可变的,一旦分配好空间,是多长,就多长,不能增加也不能减少 步骤 1 : 复制数组 把一个数组的值,复制到另一个数组中 System.arraycopy(src, ...
- vue辅助函数mapStates与mapGetters
状态管理器 <!-- store.js: --> import Vue from 'vue' import Vuex from 'vuex' Vue.use(Vuex) export de ...
- 纯css实现省略号,兼容火狐,IE9,chrome
<!DOCTYPE html> <html lang="en"> <head> <meta charset="UTF-8&quo ...
- 【GLG Toolkit 行业案例】Baltic Information Systems, Ltd.公司选择使用GLG Toolkit
BIS (Baltic Information Systems, Ltd.)是一家专门为核电厂开发安全和过程监控系统的软件公司. BIS的新产品 BISMARC 是一个通用过程控制和监控的SCADA系 ...