Happy Number
/* 题意:判断一个数是不是happy数(用这个数每一位的平方的和代替这个数, 不断重复这个过程,如果最后这个数是1,那么这个数就是happy数) 解法:用map容器映射一下,判断当前数是否在前面出现过,如果出现过那么 这个数就不是happy数,不过这样子的空间复杂度太高 */ class Solution { public: bool isHappy(int n) { map<long,bool>m; m.clear(); long ans = (long)n; while(ans!=1){ long cur = ans;ans = 0; while(cur){ ans +=(cur%10)*(cur%10); cur/=10; } if(m[ans]) return false; m[ans] = 1; } return true; } };
郑重声明:本站内容如果来自互联网及其他传播媒体,其版权均属原媒体及文章作者所有。转载目的在于传递更多信息及用于网络分享,并不代表本站赞同其观点和对其真实性负责,也不构成任何其他建议。