LeetCode 202 快乐数

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

        return sum;
    }

    bool isHappy(int n) {
        unordered_set<int> set;
        while (1) {
            int sum = getSum(n);
            if (sum == 1) return true;

            if (set.find(sum) != set.end()) return false;
            else set.insert(sum);

            n = sum;

        }
    }
};
posted @ 2022-09-05 17:15  hjy94wo  阅读(16)  评论(0)    收藏  举报