# Happy Number # Repeat the process until the number equal to 1, these are happy # OR LOOP ENDLESS in a cycle, these are not happy class Solution: def isHappy(self, n: int, status=None) -> bool: if status is None: status = [] str_n = str(n) total = 0 for number in str_n: total += int(number) ** 2 if total == 1: return True if str(total) in status: return False status.append(str(total)) return self.isHappy(total, status) if __name__ == "__main__": number = 13 print(Solution().isHappy(number))