用哈希表来标记寻找快乐数的过程中出现的数,如果有的数重复出现则表示已经进入死循环
bool isHappy(int n){
int haxi[1000]={0};
int sum=get_sum(n);
while(sum!=1){
if(haxi[sum]!=1){
haxi[sum]=1;
}
else{
return false;
}
sum=get_sum(sum);
}
return true;
}
int get_sum(int n)
{
int sum=0;//n每个位置上的数字的平方之和
while(n)
{
sum+=pow(n%10,2);
n=n/10;
}
return sum;
}