【51Nod1584】加权约数和(数论)】的更多相关文章

这题其实就是反演一波就好了(那你还推了一下午+一晚上),不过第一次碰到\(O(n\log n)\)预处理分块和式的方法-- 不知为啥我跟唐教主的题解推的式子不太一样--(虽然本质上可能是相同的吧) 那就写一写好了,顺便骗点访问量(逃 \[\begin{align} \nonumber\text{Let}\space A=&\sum_{i=1}^n\sum_{j=1}^i i\sigma_1(ij),B=\sum_{i=1}^n i\sigma_1(i^2)\\ \nonumber\text{Th…
题目大意: 求: \[ \sum_{i-1}^n\sum_{j=1}^nmax(i,j)\sigma(i*j) \] 题解 对于这个\(\max\),套路的把它转化成: \[ 2*\sum_{i=1}^n\sum_{j=1}^ii*\sigma(i*j)-\sum_{i=1}^n i*\sigma(i*i) \] 对于前面的部分,我们可以: \[ \sum_{i=1}^{n}\sum_{j=1}^ii\sum_{a|i}\sum_{b|j}a*\frac{j}{b}[(a,b)==1] \] \…
[51Nod1584]加权约数和(数论) 题面 51Nod 题解 要求的是\[\sum_{i=1}^n\sum_{j=1}^n max(i,j)\sigma(ij)\] 这个\(max\)太讨厌了,直接枚举一半乘个二. \[2\sum_{i=1}^n\sum_{j=1}^{i}i\sigma(ij)-\sum_{i=1}^ni\sigma(i^2)\] 后面这一半可以直接预处理,只需要把\(i\)分解,可以做到调和级数的复杂度. 只考虑前面这一半,显然只需要考虑的是\(\sigma(ij)\)这…
1584 加权约数和 题意:求\(\sum_{i=1}^{N} \sum_{j=1}^{N} {\max(i,j)\cdot \sigma(i\cdot j)}\) 多组数据\(n \le 10^6, T \le 50000\) 这道题有两步我感到非常神奇.tls好强啊. 首先,怎么处理\(max(i,j)\) \[ max(i,j) = \sum_{k=1}^n[k\le i \ or\ k \le j] = n-\sum_{k=1}^n[k>i][k>j] \] 这样转化之后再代入,可以得…
LINK:加权约数和 我曾经一度认为莫比乌斯反演都是板子题. 做过这道题我认输了 不是什么东西都是板子. 一个trick 设\(s(x)\)为x的约数和函数. 有 \(s(i\cdot j)=\sum_{x|i}\sum_{y|j}[(x,y)==1]x\cdot \frac{j}{y}\) 证明的话可以自己意会 赶时间. 然后 这道题唯一特别的是转换完后 直接莽推根号做法是行不通的 同时也过不去. 不如先考虑求 \(f_i=\sum_{j=1}^i s(i\cdot j)\) 然后带入上面的那…
题目传送门 约数研究 题目描述 科学家们在Samuel星球上的探险得到了丰富的能源储备,这使得空间站中大型计算机“Samuel II”的长时间运算成为了可能.由于在去年一年的辛苦工作取得了不错的成绩,小联被允许用“Samuel II”进行数学研究. 小联最近在研究和约数有关的问题,他统计每个正数N的约数的个数,并以f(N)来表示.例如12的约数有1.2.3.4.6.12.因此f(12)=6.下表给出了一些f(N)的取值: f(n)表示n的约数个数,现在给出n,要求求出f(1)到f(n)的总和.…
1968: [Ahoi2005]COMMON 约数研究 Time Limit: 1 Sec Memory Limit: 64 MB Submit: 1513 Solved: 1154 [Submit][Status][Discuss] Description Input 只有一行一个整数 N(0 < N < 1000000). Output 只有一行输出,为整数M,即f(1)到f(N)的累加和. Sample Input 3 Sample Output 5 HINT Source Day2 奇…
题目链接: 约数和 基准时间限制:2 秒 空间限制:131072 KB 分值: 80 有三个下标从1到n的数组a.b.c. a数组初始全为0. b[i]=∑j|ia[j] c[i]=∑j|ib[j] 需要进行下列操作: 1 x y :将a[x]加上y 2 x :询问当前c[x]的值   j | i 表示j是i的约数.               Input   第一行两个整数,n和q,分别表示数组下标范围和操作次数.(1<=n,q<=1,000,000) 接下来q行,描述一个操作.(x随机,1…
题意 题目链接 Sol 这题是来搞笑的吧.. 考虑一个数的贡献是\(O(\frac{N}{i})\) 直接数论分块. #include<bits/stdc++.h> #define Pair pair<int, int> #define MP(x, y) make_pair(x, y) #define fi first #define se second #define int long long #define LL long long #define ull unsigned…
Description 在整理以前的试题时,他发现了这样一道题目:"求 \(\sum\sigma(i)\),其中 \(1≤i≤N\),\(σ(i)\) 表示 \(i\) 的约数之和." 现在他长大了,题目也变难了,所以麻烦你来帮他解决一道数论题吧. 他需要你求如下表达式的值: \[ \sum_{i=1}^N\sum_{j=1}^N\max(i,j)⋅σ(i⋅j) \] 其中 \(\max(i,j)\) 表示 \(i\) 和 \(j\) 里的最大值,\(\sigma(i⋅j)\) 表示…