铜仁市论坛

首页 » 分类 » 问答 » 数据结构和算法4,并非盈数之和
TUhjnbcbe - 2020/12/15 17:28:00

来源:数据结构和算法

完全数是指真因数之和等于自身的那些数。例如,28的真因数之和为1+2+4+7+14=28,因此28是一个完全数。

一个数n被称为亏数,如果它的真因数之和小于n;反之则被称为盈数。

由于12是最小的盈数,它的真因数之和为1+2+3+4+6=16,所以最小的能够表示成两个盈数之和的数是24。通过数学分析可以得出,所有大于的数都可以被写成两个盈数的和;尽管我们知道最大的不能被写成两个盈数的和的数要小于这个值,但这是通过分析所能得到的最好上界。

找出所有不能被写成两个盈数之和的正整数,并求它们的和。

上期的问题是:3,最小倍数

答案:

System.out.println(smallestMultiple(20));

分析:

其实就是求1到20的最小公倍数,1到n的最小公倍数也是n*(n-1)的倍数,通过不断的乘以n*(n-1)的倍数来判断,如果1到n都能被他整除,则直接返回。

预览时标签不可点收录于话题#个上一篇下一篇
1
查看完整版本: 数据结构和算法4,并非盈数之和