leetcode-202-easy

Happy Number
思路一: happy number 的结果完全分类,就两种情况

  1. 最后的值为 1
  2. 进入循环(用 map 记录)
public boolean isHappy(int n) {
    Set<Integer> set = new HashSet<>();
    while (true) {

        int sum = 0;
        while (n >= 1) {
            sum += (n % 10) * (n % 10);
            n /= 10;
        }
        if (sum == 1) return true;
        n = sum;

        if (set.contains(sum)) {
            return false;
        } else {
            set.add(sum);
        }
    }
}
posted @ 2022-10-19 07:34  iyiluo  阅读(22)  评论(0)    收藏  举报