华为OD机试 - 完全数计算(C++ & Java & JS & Python)

描述

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

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

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

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

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

输入描述:

输入一个数字n

输出描述:

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

示例1

输入:

1000

输出:

3

Java:

import java.util.Scanner;

public class Main{
   public static void main(String[] args){
       Scanner in = new Scanner(System.in);
       while(in.hasNextInt()){
           int n = in.nextInt();
           
           //第一个完全数是6,若小于6则输出0
           if(n < 6){
               System.out.println(0);
               continue;
           }
           
           int count 

猜你喜欢

转载自blog.csdn.net/m0_68036862/article/details/132810193