【Leetcode笔记】快乐数

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)

二、没想到的点

  • 运用%计算提取各个数位的数字

你可能感兴趣的:(python,leetcode,算法,职场和发展)