[LeetCode]Happy Number

来源:互联网 发布:pkzip 是什么软件 编辑:程序博客网 时间:2024/05/20 00:09

题目:判断给定的正整数是不是Happy Number,经过一下计算,若结果为1则为Happy Number。


分析:使用vector来判断中间结果是否出现过,若出现则会陷入死循环,则不是Happy Number

c++参考代码:

class Solution {
public:
    bool isHappy(int n) {
        int sum=0;
        vector<int> num;
        num.push_back(n);
        while(n!=1)
        {
            while(n!=0)
            {
                sum+=pow(n%10,2);
                n=n/10;
            }
            n=sum;
            if(find(num.begin(), num.end(), n) != num.end())
            {
                return false;
            }else {
                num.push_back(n);
            }
            sum=0;
        }
        return true;
    }
};

0 0
原创粉丝点击