leetcode-202-Happy Number

但使书种多,会有岁稔时。这篇文章主要讲述leetcode-202-Happy Number相关的知识,希望能为你提供帮助。
【leetcode-202-Happy Number】                                          Happy Number


Write an algorithm to determine if a number is "happy".
A happy number is a number defined by the following process: Starting with any positive integer, replace the number by the sum of the squares of its digits, and repeat the process until the number equals 1 (where it will stay), or it loops endlessly in a cycle which does not include 1. Those numbers for which this process ends in 1 are happy numbers.
Example:  19 is a happy number

  • 12  + 92  = 82
  • 82  + 22  = 68
  • 62  + 82  = 100
  • 12  + 02  + 02  = 1


直接模拟。


class Solution { public: bool isHappy(int n) { if (n == 1) return true; int m ; map< int,int> a; while (n != 1) { if (a[n] == 1) break; a[n] = 1; m = 0 ; while (n) { m += (n%10) * (n%10) ; n = n/10 ; } n = m ; if (n == 1) return true; } return false; } };


 





    推荐阅读