约数研究

【题目描述】

统计每个正数N的约数个数,并用f(N)来表示。

例如12的约数有1、2、3、4、6、12,因此f(12)=6,下表给出了一些f(N)的取值:

f(N)表示N的约数个数,现在给定N,询问f(1)~f(N)的总和为多少。

【输入描述】

输入一个整数N。

【输出描述】

输出一个整数,表示答案。

【输入样例】

3

【输出样例】

5

【数据范围及提示】

对于20%的数据,N <= 5000;

对于100%的数据,N <= 1000000。

源代码:

#include<cstdio>
int n,Ans(0);
int main()
{
    scanf("%d",&n);
    for (int a=1;a<=n;a++)
      Ans+=n/a;
    printf("%d",Ans);
    return 0;
}

/*
    很水的一道题,不过还挺考察变向思维的。
    从总体出发,考虑1~N中的每个数是多少数的约数,累加就可以了。
    一开始想到了昨天数论课上的公式:
        (1)唯一分解定理:
            N=(p1^k1)*(p2^k2)*...*(pn^kn);
        (2)约数个数函数:
            T(N)=(1+k1)*(1+k2)*...*(1+kn);
        (3)约数和函数:
            S(N)=(1+p1+p1^2+...+p1^k1)*(1+p2+p2^2...+p2^k2)*...*(1+pn+pn^2+...+pn^kn);
    数论真是博大精深。
*/

转载于:https://www.cnblogs.com/Ackermann/p/6054096.html

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
### 回答1: 求解220的真约数之和,即除去220本身的所有因数之和。可以先计算出220的因数,然后排除220本身,将剩余的因数相加即可。220的因数有1、2、4、5、10、11、20、22、44、55、110,去掉220后,剩余的因数有1、2、4、5、10、11、20、22、44、55、110,它们的和为284。所以,284是一个真约数和等于本身的数。 ### 回答2: 毕达哥拉斯的这个发现被称为“完数和亲和数”,因为其中涉及了数学中的两个重要概念:“完数”和“亲和数”。 首先是“完数”。完数是指一个数的所有真因子(即不包括自身的因子)之和恰好等于这个数本身的数。比如上面提到的220就是一个完数,因为它的真因子1、2、4、5、10、11、20、22、44、55、110的和,即284,正好等于220本身。完数非常少见,小于10万的正整数中只有4个完数:6、28、496和8128。 其次是“亲和数”。两个数如果分别是对方的所有真因子之和,就称它们为“亲和数”。例如上面的220和284就是一对亲和数,因为220的真因子之和是284,而284的真因子之和又是220。另外一个比较著名的亲和数对是“220,284”还有“1184,1210”。 毕达哥拉斯的研究不仅仅是奇妙的数学发现,也启示人们对数学的深入探索。人们在此基础上,进一步发展了许多数学定理和概念,从而推动了数学的发展。同时,这个问题也引发了人们对数学的兴趣,激发了无数年轻学生的数学兴趣和探索热情。 总的来说,毕达哥拉斯的完数和亲和数的探讨为整个数学领域的发展提供了新的思路和方向。它不仅是一种数学知识,更是一种对于数学的深度挖掘和探究。 ### 回答3: 毕达哥拉斯这一发现,被我们称为完全数和亲和数。完全数是指一个数其所有真约数之和等于它本身的数,而亲和数则是指两个数的真约数和分别等于对方的数本身,而且这两个数本身是不同的。 完全数的研究在古代数学中非常重要。在欧几里得的《几何原本》中,就对完全数做了初步的分类。同时,亲和数的研究也为后来的数学家提供了极为重要的思路。毕达哥拉斯发现的这两个数,开启了完全数与亲和数的研究之路。 对于完全数来说,我们已知最小的完全数是6。而随着数的增大,完全数的数量也相应变少。到目前为止,已知的完全数只有51个,最大的一个已经超过了10^24。不过,完全数的性质对数学研究的贡献依旧不容忽视。 亲和数的研究一直是数学领域的热点之一。在亲和数的研究中,重要的工具包括欧拉函数和殆勒定理。历史上,一些著名的数学家,如欧拉、歌德尔、庞加莱等人都曾经在亲和数的研究上做出了重要的贡献。 总的来说,毕达哥拉斯的发现为数学研究带来了无穷的启发。在后来的数学研究中,完全数和亲和数的研究都被视为重要的研究方向之一。它们均揭示了古代数学家深入探究自然数的智慧和思维机制。

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值