202. 快乐数

Ideas

快乐数的判断逻辑其实挺简单的,按照定义去循环执行就可以了。

关键是如果不是快乐数怎么结束循环。

我们猜测会有以下三种可能:

  1. 最终会得到 1
  2. 最终会进入循环
  3. 值会越来越大,最后接近无穷大

其实我猜到了前两种情况,对于第三种情况,如果出现,那么这题就没法做了,既然这题能做,那就说明第三种情况不会出现。

官方题解给的证明:

Code

Python

class Solution:def isHappy(self, n: int) -> bool:visit = set()while n != 1 and n not in visit:visit.add(n)new = list(map(int, list(str(n))))for i, v in enumerate(new):new[i] = v ** 2n = sum(new)return n == 1if __name__ == '__main__':print(Solution().isHappy(19))

LeetCode Algorithm 202. 快乐数相关推荐

  1. LeetCode:202. 快乐数

    1.题目描述 编写一个算法来判断一个数是不是"快乐数". 一个"快乐数"定义为:对于一个正整数,每一次将该数替换为它每个位置上的数字的平方和,然后重复这个过程直 ...

  2. LeetCode No.202 快乐数

    一.题目描述 编写一个算法来判断一个数 n 是不是快乐数. 「快乐数」 定义为: 对于一个正整数,每一次将该数替换为它每个位置上的数字的平方和. 然后重复这个过程直到这个数变为1,也可能是 无限循环 ...

  3. 算法训练Day6 | LeetCode:242. 有效的字母异位词(数组作哈希表);349. 两个数组的交集(Set作哈希表);202.快乐数 (Set作哈希表);1. 两数之和(Map作哈希表)

    目录 LeetCode242. 有效的字母异位词 方法:数组作哈希表 1. 思路 2. 代码实现 3. 复杂度分析 4. 思考 Leetcode349. 两个数组的交集 方法一:用Set作HashMa ...

  4. LeetCode 202. 快乐数【哈希表】

    202. 快乐数 编写一个算法来判断一个数 n 是不是快乐数. 「快乐数」 定义为: 对于一个正整数,每一次将该数替换为它每个位置上的数字的平方和. 然后重复这个过程直到这个数变为 1,也可能是 无限 ...

  5. Day 06 | 242.有效的字母异位词 349. 两个数组的交集 202.快乐数 1. 两数之和

    这四道题之前都做过!比第一次顺利一些,不过还是得看题解,磕磕绊绊的.不过我相信坚持下去一定会越来越好滴! 242.有效的字母异位词 给定两个字符串 s 和 t ,编写一个函数来判断 t 是否是 s 的 ...

  6. 代码随想录算法训练营第六天|242. 有效的字母异位词,349. 两个数组的交集,202.快乐数,1. 两数之和

    242. 有效的字母异位词 力扣题目链接 给定两个字符串 s 和 t ,编写一个函数来判断 t 是否是 s 的字母异位词. 示例 1: 输入: s = "anagram", t = ...

  7. 小白刷代码随想录day6 -- 242.有效的字母异位词,349.两个数组的交集,202快乐数,1.两数之和

    今天是刷代码随想录的day6.昨天day5元宵节休息日.今天开始了哈希表部分.对于哈希表的内容之前没有怎么学习过,所以今天的刷题主要以学习方法为主.待二刷的时候争取能够手撕代码! 哈希法 首先一个大前 ...

  8. day6代码随想录算法训练营| ● 242.有效的字母异位词 ● 349. 两个数组的交集 ● 202. 快乐数● 1. 两数之和

    ● 242.有效的字母异位词 用map的话效率应该会很低吧,特别是查询全部value class Solution { public:bool isAnagram(string s, string t ...

  9. leetcode 202. 快乐数 思考分析(哈希集合与双指针解)

    1.题目 编写一个算法来判断一个数 n 是不是快乐数. 「快乐数」定义为:对于一个正整数,每一次将该数替换为它每个位置上的数字的平方和,然后重复这个过程直到这个数变为 1,也可能是 无限循环 但始终变 ...

最新文章

  1. pyplot.plot画图turtouil
  2. mysql数据库可以升级吗_[数据库]MySQL升级
  3. 【ABAP增强】基于源代码的增强
  4. 判断101-200之间有多少个素数,并输出所有素数(C)
  5. Struts2StudentsInfoManage学生管理系统struts2版
  6. GenePix Pro 3.0
  7. Matlab求高斯脉冲函数
  8. 非结构化数据上下文中的GraphQL
  9. 【Android】spannableStringBuilder
  10. ObjectDetecionAPI TypeError: __new__() got an unexpected keyword argument 'serialized_options'
  11. Centos干净卸载apache-php-mysql
  12. [机器学习笔记]奇异值分解SVD简介及其在推荐系统中的简单应用
  13. C语言32个关键字详解
  14. 图书管理系统的E-R图和数据库模型图
  15. web打印三种实现方式
  16. 可能有用的篡改检测常识
  17. 计算机安全的最后一道防线,网络安全的第一道防线是(图文)
  18. 大自然教给我们“知足”的生存方式
  19. 2021广东高考成绩排名如何查询,2021广东省地区高考成绩排名查询,广东省高考各高中成绩喜报榜单...
  20. Kindle使用指南

热门文章

  1. 65. Valid Number
  2. DDL与DML的区别
  3. Message 消息提示
  4. Struts自定义拦截器拦截器工作原理
  5. Ifvisible.js – 判断网页中的用户是闲置还是活动状态
  6. hdu 1159 Common Subsequence (dp)
  7. jquery字符串转数组
  8. STL vector
  9. testlink mysql配置_Testlink安装后配置修改
  10. Java黑皮书课后题第8章:*8.16(对二维数组排序)编写一个方法,使用下面的方法头对二维数组排序。这个方法首先按行排序,然后按列排序