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