#6500. 完全数 2 (Perfect 2)

完全数 2 (Perfect 2)


题目 1:完全数 2 (Perfect 2)

题目描述

一个整数 nn真因子是指小于 nn 且能整除 nn 的正整数。例如,6 的真因子是 1, 2 和 3。

D(n)D(n) 表示整数 nn 的所有真因子之和。

  • D(6)=1+2+3=6D(6) = 1 + 2 + 3 = 6
  • D(4)=1+2=3D(4) = 1 + 2 = 3
  • D(7)=1D(7) = 1

根据 D(n)D(n)nn 的关系,我们可以将 nn 分为三类:

  1. 亏数 (Deficient)D(n)<nD(n) < n
  2. 完全数 (Perfect)D(n)=nD(n) = n
  3. 盈数 (Abundant)D(n)>nD(n) > n

任务

编写一个程序,读取两个正整数 AABB,然后计算并显示在闭区间 [A,B][A, B] 之间(包含 AABB亏数、完全数和盈数的个数。

输入说明:

  • 两个正整数 AABB

输出说明:

  • 三个整数,依次代表亏数、完全数、盈数的数量,中间用单个空格分隔。

示例解析

  • 输入4 6
  • 分析:考虑数字 4, 5, 6。
    • 4 的真因子是 1, 2 (D(4)=3<4D(4)=3 < 4) \rightarrow 亏数
    • 5 的真因子是 1 (D(5)=1<5D(5)=1 < 5) \rightarrow 亏数
    • 6 的真因子是 1, 2, 3 (D(6)=6=6D(6)=6 = 6) \rightarrow 完全数
  • 结果2 1 0(2 个亏数,1 个完全数,0 个盈数)

测试用例 (Test Cases)

请使用以下数据验证你的程序:

  • a) 100 110
  • b) 20 80
  • c) 500 1000
  • d) 1000 10000