快乐数算法

编写一个算法来判断一个数 n 是不是快乐数。

「快乐数」 定义为:

  • 对于一个正整数,每一次将该数替换为它每个位置上的数字的平方和。
  • 然后重复这个过程直到这个数变为 1,也可能是 无限循环 但始终变不到 1。
  • 如果这个过程 结果为 1,那么这个数就是快乐数。

如果 n快乐数 就返回 true ;不是,则返回 false

示例 1:

复制代码
输入:n = 19
输出:true
解释:
12 + 92 = 82
82 + 22 = 68
62 + 82 = 100
12 + 02 + 02 = 1

示例 2:

复制代码
输入:n = 2
输出:false

提示:

  • 1 <= n <= 231 - 1
java 复制代码
class Solution {
    public boolean isHappy(int n) {
        if (n == 1) {
            return true;
        } else if (n < 10 && n % 2 == 0) {
            return false;
        } else {
            return isHappy(num(n));
        }
    }

    public int num(int n) {
        int sum = 0;
        int num = n / 10;
        int mod = n % 10;
        sum = sum + mod * mod;
        if (num == 0) {
            return sum;
        } else {
            return sum + num(num);
        }
    }
}
相关推荐
zore_c5 分钟前
【数据结构】队列——超详解!!!(包含队列的实现)
c语言·网络·数据结构·c++·笔记·算法·链表
小杰帅气6 分钟前
智能指针喵喵喵
开发语言·c++·算法
智驱力人工智能15 分钟前
守护生命的水上之眼 无人机人员落水检测系统的技术攻坚与应用实践 无人机溺水识别 山区水库无人机落水检测系统 水域安全无人机部署指南
大数据·人工智能·算法·安全·无人机·边缘计算
hweiyu0017 分钟前
排序算法选型决策树
算法·排序算法
蓝色汪洋2 小时前
xtu oj矩阵
算法
hh随便起个名8 小时前
力扣二叉树的三种遍历
javascript·数据结构·算法·leetcode
写写闲篇儿9 小时前
微软面试之白板做题
面试·职场和发展
Dingdangcat8610 小时前
城市交通多目标检测系统:YOLO11-MAN-FasterCGLU算法优化与实战应用_3
算法·目标检测·目标跟踪
tang&10 小时前
滑动窗口:双指针的优雅舞步,征服连续区间问题的利器
数据结构·算法·哈希算法·滑动窗口
拼命鼠鼠10 小时前
【算法】矩阵链乘法的动态规划算法
算法·矩阵·动态规划