leetCode(29):Happy Number
2024-10-20 05:41:04
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
- 12 + 92 = 82
- 82 + 22 = 68
- 62 + 82 = 100
- 12 + 02 + 02 =
1
class Solution {
public:
bool isHappy(int n) {
map<int,int> value;
while(n!=1)
{
value[n]=1;
int remain;
int tmp=0;
while(n!=0)
{
remain=n%10;
tmp+=remain*remain;
n=n/10;
}
n=tmp;
if(value.find(n)!=value.end())
break;//是否已经出现过
}
if(n!=1)
return false;
return true; }
};
最新文章
- PHP date函数时间相差8个小时解决办法
- 把《c++ primer》读薄(3-2 标准库vector容器+迭代器初探)
- javascript:算法之for循环
- STC12C5A60S2笔记5(省电模式)
- 关于基本类型值和引用类型值以及Vue官方API的array.$remove(reference)
- nginx修改内核参数
- 深入理解Java虚拟机 - 垃圾收集概述
- Android自动化测试之monkeyrunner工具
- printf输出函数
- MFC CArchive实现保存到二进制文件
- CSS变量variable
- NOPI实现导入导出泛型List,支持自定义列
- 【干货】.NET WebApi HttpMessageHandler管道
- Spring Boot+Jsp启动异常
- python学习笔记(5-1)-基本数据类型-字符串类型及操作
- ACM退役前2个月总结
- Django初级手册3-视图层与URL配置
- 170420、maven内置常量
- ASP.NET CORE 学习之原生DI实现批量注册
- PHP常用的一些数组操作总结