Leetcode原题链接:快乐数
一、思路
- 提取n各个数位上的数字,平方转化为新数,存储新数到列表中。
- 判断新数是否为1或已经在列表中。
二、代码
class Solution:
def isHappy(self, n: int) -> bool:
def getNum(num):
sum = 0
while num:
sum += (num % 10) ** 2
num = num // 10
return sum
record = []
while True:
n = getNum(n)
if n == 1:
return True
elif n in record:
return False
else:
record.append(n)
set(record)
二、没想到的点
- 运用
%
计算提取各个数位的数字