Solve 202. Happy Number

This commit is contained in:
Kiril Kovachev 2024-04-30 17:07:28 +01:00
parent 099bac4380
commit 120ab5f7a0

View File

@ -0,0 +1,16 @@
class Solution:
def isHappy(self, n: int) -> bool:
seen = {n}
while True:
n = self.square_digital_sum(n)
if n in seen:
return n == 1
seen.add(n)
@staticmethod
def square_digital_sum(n: int) -> int:
total = 0
while n > 0:
n, digit = divmod(n, 10)
total += digit**2
return total