【Leetcode202】Happy Number

非常中规中矩的做法,没有参考其他人怎么做的,有时间看看

Runtime: 4 ms, faster than 68.02% of C++ online submissions for Happy Number.

Memory Usage: 7.4 MB, less than 100.00% of C++ online submissions for Happy Number. 

class Solution {
public:
    std::vector<int> results;
    bool isHappy(int n) {
        int s = pow2Num(n);
        if(s == 1)
            return true;
        else{
            if(isIncluded(s))
                return false;
            else{
                results.push_back(s);
                return isHappy(s);
            }
        }

    }
    int pow2Num(int m){
        int s = 0;
        while(m != 0){
            s += pow(m%10, 2);
            m /= 10;
        }
        return s;
    }
    bool isIncluded(int num){
        for(int index = 0; index < results.size(); ++index){
            if(results[index] == num)
                return true;
        }
        return false;
    }
};

 犯了一个比较低级的错误就是,把sqrt理解成平方的意思,实际上这是开平方!!!

我知道了sqrt是square root的缩写

发布了112 篇原创文章 · 获赞 15 · 访问量 2万+

猜你喜欢

转载自blog.csdn.net/weixin_39458342/article/details/104688027