Задача: Идеальное число
https://t.me/pythonlУсловие: идеальное число - это положительное целое число, которое равно сумме делителей этого же числа, за исключением самого числа.
Необходимо проверить входное число на идеальность.
Пример:
Ввод: num = 28
Вывод: true
Объяснение: 28 = 1 + 2 + 4 + 7 + 14
Ввод: num = 7
Вывод: false
Решение:
Python
class Solution:
def checkPerfectNumber(self, n: int) -> bool:
if n==1:
return False
sq=int(sqrt(n))
s=1
for i in range(2,sq+1):
if n%i==0:
t=n//i
s+=t+i
if s==n:
return True
return False