class Solution: def __init__(self): self.memo = dict() def isHappy(self, n): return self.recIsHappy(n) def recIsHappy(self, n): if n in self.memo: return False elif n == 1: return True else: self.memo[n] = True newN = 0 for c in str(n): newN += int(c) ** 2 return self.recIsHappy(newN) s = Solution() print("Expected: True") print("Got:", s.isHappy(19))