202. 快乐数
Posted xyqxyq
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了202. 快乐数相关的知识,希望对你有一定的参考价值。
官方题解
https://leetcode-cn.com/problems/happy-number/solution/kuai-le-shu-by-leetcode-solution/
class Solution {
public:
bool isHappy(int n) {
unordered_map<int,int> mp;
while (true) {
int t=n,w=0;
while (t) {
w+=(t%10)*(t%10);
t/=10;
}
if (mp[w]==0) mp[w]=1;
else return false;
if (w==1) return true;
n=w;
}
}
};
然而我最开始是这么写的,盲猜如果循环没有规律的话,不会超过一般的时间复杂度的,然后就填了1e6的循环,发现401点超时,然后改成1e5就可以了,哈哈,奇奇怪怪的姿势
class Solution {
public:
bool isHappy(int n) {
int k=1e5;
while (k--) {
int t=n;
int w=0;
while (t) {
w+=(t%10)*(t%10);
t/=10;
}
if (w==1) {
return true;
}
n=w;
}
return false;
}
};
以上是关于202. 快乐数的主要内容,如果未能解决你的问题,请参考以下文章