首页 > 移动平台 > 详细

happy number

时间:2019-06-04 12:44:13      阅读:195      评论:0      收藏:0      [点我收藏+]
 public static boolean happyNum(int num) {
        if (num < 0) {
            return false;
        }
        int sum = 0;
        while (num > 0) {
            sum += (num % 10) * (num % 10);
            num /= 10;
        }
        if (sum == 1) {
            return true;
        }

        if (sum == 4) {
            return false;
        }

        return happyNum(sum);
    }
def square(x):
    return int(x) * int(x)


def happy(num):
    return sum(map(square, list(str(num))))


def is_happy(num):
    seen_nums = set()
    while num > 1 and (num not in seen_nums):
        seen_nums.add(num)
        num = happy(num)
    return num == 1


print is_happy(19)

 

https://en.wikipedia.org/wiki/Happy_number

 

happy number

原文:https://www.cnblogs.com/lijiale/p/10972785.html

(0)
(0)
   
举报
评论 一句话评论(0
关于我们 - 联系我们 - 留言反馈 - 联系我们:wmxa8@hotmail.com
© 2014 bubuko.com 版权所有
打开技术之扣,分享程序人生!