leetcood学习笔记-202-快乐数
题目描述:
方法一:比较笨的办法,根据题意,如果变成1返回True,如果出现重复返回False 看到下面有位朋友用的是dict,我用了list,两个都跑了一下似乎list快一点?
class Solution: def isHappy(self, n: int) -> bool: l = [] while True: l.append(n) n = sum(int(i)**2 for i in str(n)) if n == 1:#n==1 和 n in l 的判断顺序不能相反 如:输入1 return True elif n in l: return False
方法二:
法三:
class Solution: def isHappy(self, n: int) -> bool: #l = [] while True: #l.append(n) n = sum(int(i)**2 for i in str(n)) if n == 1: return True elif n == 4: return False