• 202. Happy Number


    Write an algorithm to determine if a number is "happy".

    A happy number is a number defined by the following process: Starting with any positive integer, replace the number by the sum of the squares of its digits, and repeat the process until the number equals 1 (where it will stay), or it loops endlessly in a cycle which does not include 1. Those numbers for which this process ends in 1 are happy numbers.

    Example: 19 is a happy number

    • 12 + 92 = 82
    • 82 + 22 = 68
    • 62 + 82 = 100
    • 12 + 02 + 02 = 1

    python实现:

    class Solution(object):
        def sqrsum(self, n):#计算平方和
            m = 0
            while n:
                if n < 10:
                    n1 = n
                else:
                    n1 = n % 10
                m += n1 ** 2
                n = n / 10
            return m
           
        def isHappy(self, n):
            """
            :type n: int
            :rtype: bool
            LN:list of not happy
            tL:tempt list
            """
            LN = []
            tL = []
            while True:
                if n in LN:
                    return False
                elif n not in tL:
                    tL.append(n)
                    n = self.sqrsum(n)
                    if n == 1:
                        return True
                else:
                    LN.extend(tL)

  • 相关阅读:
    Sublime Text 3——插件配置篇
    Sublime Text 3——基本介绍篇
    线性同余方程
    费马小定理
    一点心事
    寒诗
    e网通学习笔记
    std::cout<<"Goodbye 2019"<<" "<<"Hello 2020"<<' ';
    新砍
    NOIP2019游记
  • 原文地址:https://www.cnblogs.com/sxbjdl/p/5221571.html
Copyright © 2020-2023  润新知