HJ56 完全数计算

描述

完全数(Perfect number),又称完美数或完备数,是一些特殊的自然数。

它所有的真因子(即除了自身以外的约数)的和(即因子函数),恰好等于它本身。

例如:28,它有约数1、2、4、7、14、28,除去它本身28外,其余5个数相加,1+2+4+7+14=28。

输入n,请输出n以内(含n)完全数的个数。

数据范围: 1≤n≤5×105 1≤n≤5×105 

输入描述:

输入一个数字n

输出描述:

输出不超过n的完全数的个数

示例1

输入:

1000

复制输出:

3
#include 
#include
using namespace std;


int main() {
    int n;
    vector primer;
    vector isPrimer;

    int count = 0; //  perfect number

    while (cin >> n) {
        int sum = 0;
        if (n >= 1 && n <= 500000) {
            for (int i = 1; i <= n; i++) {
                for (int j = 1; j 

你可能感兴趣的:(牛客网华为机试,c++,算法,数据结构)