链接
题目描述
求 ∑ i = 1 n − 1 ∑ j = i + 1 n g c d ( i , j ) \sum\limits_{i = 1}^{n-1}\sum\limits_{j = i + 1}^{n}gcd(i,j) i=1∑n−1j=i+1∑ngcd(i,j)
样例输入
2
10
100
样例输出
67
13015
思路
我讨厌数论…
拆开处理
∑ i = 1 n g c d ( i , n ) \sum\limits_{i = 1}^{n}gcd(i,n) i=1∑ngcd(i,n)
= ∑ i = 1 n ∑ d ∣ n [ g c d ( i , n ) = = d ] ∗ d =\sum\limits_{i = 1}^{n}\sum\limits_{d|n}[gcd(i,n)==d]*d =i=1∑nd∣n∑[gcd(i,n)==d]∗

博客详细介绍了如何解决数论问题,特别是关于计算从1到n所有不同i和j之间的最大公约数的总和。通过欧拉函数和数论的知识,将复杂问题简化为更易处理的形式,并利用前缀和进行优化。提供了样例输入和输出,以及思路和代码实现。

5284

被折叠的 条评论
为什么被折叠?



