目录
题目
完全数,又称完美数或完备数,是一些特殊的自然数。它所有的真因子(即除了自身以外的约数)之和恰好等于它本身。
现在,你需要计算 1 到 n之间完全数的个数。
输入描述:
输入一个整数 n(1≦n≦5×10^5)输出描述:
输出一个整数,代表区间内完全数的个数。示例1
输入:1000
输出:3
说明:
第一个完全数是 6,因为 6 的约数有 1,2,3,6,去除本身后,剩余约数之和为 1+2+3=6。
第二个完全数是 28,因为 28 的约数有 1,2,4,7,14,28,去除本身后,剩余约数之和为 1+2+4+7+14=28
第二个完全数是 496。
思路
两个for循环就搞定了,主要就是实现一下其中的逻辑即可【约数相加等于其本身】。
Code
#include <iostream>
using nam