快乐数-力扣

使用一个set来存储遇到的每个数,如果遇到的数在set中,那么说明这个数不是快乐数,否则一直循环下去,直到n = 1结束循环,表示这个数是个快乐数。

  • 需要注意的是,给定一个数 n, 怎样对这个数 n 进行每一位求和。

代码如下:

cpp 复制代码
class Solution {
public:
    bool isHappy(int n) {
        unordered_set<int> s;
        while(n != 1){
            if(s.find(n) != s.end()){
                return false;
            }
            else {
                s.insert(n);
            }
            n = getSum(n);
        }  
        return true;
    }

    int getSum(int n){
        int sum = 0;
        while(n){
            sum += (n % 10) * (n % 10);
            n /= 10;
        }

        return sum;
    }
};
相关推荐
All for pursuit.8 小时前
【回溯-6】79.单词搜索
数据结构·c++·算法·leetcode
ZhangJun958 小时前
Mobike 共享单车分析项目
人工智能·python·算法·kmeans·聚类·knn
Navigator_Z8 小时前
LeetCode //C - 1281. Subtract the Product and Sum of Digits of an Integer
c语言·算法·leetcode
薛定e的猫咪9 小时前
(AISTATS 2023)BaCaDI 逐章阅读
人工智能·深度学习·算法·机器学习
Benny_Tang9 小时前
AT_arc180_d [ARC180D] Division into 3 题解
数据结构·c++·算法
殷色玫瑰9 小时前
C++ STL:stack、queue、priority_queue 与容器适配器详解
java·开发语言·数据结构·c++·算法·visualstudio
Evand J10 小时前
【电机滤波例程1】PMSM永磁同步电机转速与位置估计,MATLAB程序:标准无迹卡尔曼滤波、模型说明与仿真验证
算法·matlab·电机·ekf·负载·卡尔曼滤波
打码的老程是远篁10 小时前
手把手教你玩转大模型——3. Transformer 的位置编码——模型怎么知道谁在前,谁在后?
人工智能·算法
嘎嘎风10 小时前
MiniMind 学习笔记之 06 一张图、一百行:MiniMind 的骨架
算法·源码
用户73416810354810 小时前
只盯被动响应做状态监测?论“控制信号”在变工况故障诊断中的重要作用
算法