您的位置:首页 > 移动开发

leetcode[202]:Happy Number

2015-07-25 16:01 429 查看
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



bool isHappy(int n) {
int k;
int res=0;
if(n==1) return true;
if(n==4) return false;
while(n>0)
{
k=n%10;
res += k*k;
n=n/10;
}
return isHappy(res);
}


参考:

不是快乐数的数称为不快乐数(unhappy number),所有不快乐数的数位平方和计算,最后都会进入 4 → 16 → 37 → 58 → 89 → 145 → 42 → 20 → 4 的循环中。

来源:百度百科-快乐数
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签:  string math