Leetcode 202.快乐数 JAVA

news2024/10/7 8:21:15

题目

image-20240317213754642

思路

要注意题目中说的无限循环:它是指在求平方和的过程中,会再次出现之前的值(想象一个圈),这种情况的时候肯定算不出1来。

所以我们要设定跳出循环的条件是:当平方和结果为1或者出现循环了

出现循环怎么用代码表示呢?我们可以用一个HashSet记录求过的平方和,每次新求出一个平方和来,都看看HashSet里有没有这个值,有的话就说明出现了重复。

import java.util.HashSet;

//leetcode submit region begin(Prohibit modification and deletion)
class Solution {
    public boolean isHappy(int n) {
        Set<Integer> record = new HashSet<>();
        //当结果为1 或者 无限循环的时候跳出这个循环
        while (n != 1 && !record.contains(n)) {
            record.add(n);
            //获得每位数字平方和
            n = getSum(n);
        }
        return n == 1;
    }

    public int getSum(int n) {
        int res = 0;
        while (n > 0) {
            int temp = n % 10;
            res = res + temp * temp;
            n = n / 10;
        }
        return res;
    }
}
//leetcode submit region end(Prohibit modification and deletion)

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.coloradmin.cn/o/1525667.html

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈,一经查实,立即删除!

相关文章

数字逻辑-时序逻辑电路二——沐雨先生

一、实验目的 &#xff08;1&#xff09;熟悉计数器的逻辑功能及特性。 &#xff08;2&#xff09;掌握计数器的应用。 &#xff08;3&#xff09;掌握时序逻辑电路的分析和设计方法。 二、实验仪器及材料 三、实验原理 1、集成4位计数器74LS161&#xff08;74LS160&#…

区块链宣传推广文案怎么写 区块链宣传推广文案的写作技巧

区块链宣传推广文案的写作技巧 随着区块链技术的不断发展和应用&#xff0c;区块链项目的宣传推广变得越来越重要。而撰写有效的区块链宣传推广文案&#xff0c;则是吸引目标受众关注的关键。下面是一些区块链宣传推广文案的写作技巧&#xff1a; 1. 简明扼要的标题&#xff1…

Docker进阶教程 - 2 Docker部署SpringBoot项目

更好的阅读体验&#xff1a;点这里 &#xff08; www.doubibiji.com &#xff09; 2 Docker部署SpringBoot项目 已经学习了 Dockerfile 了&#xff0c;下面介绍一下如何将 SpringBoot 项目通过 Dockerfile 来部署到 Docker 中。 1 修改项目配置 首先需要准备一个 SpringBo…

c++算法学习笔记 (9) 双指针

1.最长连续不重复子序列 给定一个长度为 n 的整数序列&#xff0c;请找出最长的不包含重复的数的连续区间&#xff0c;输出它的长度。 输入格式 第一行包含整数 n。 第二行包含 n 个整数&#xff08;均在 0∼10^5 范围内&#xff09;&#xff0c;表示整数序列。 输出格式 …

初识Java篇(JavaSE基础语法)(1)

个人主页&#xff08;找往期文章包括但不限于本期文章中不懂的知识点&#xff09;&#xff1a; 我要学编程(ಥ_ಥ)-CSDN博客 目录 前言&#xff1a; 初识Java 运行Java程序 注释 标识符 关键字 数据类型与变量 字面常量 数据类型 变量 类型转换 类型提升 字…

基于springboot在线博客系统源码和论文

社会的发展和科学技术的进步&#xff0c;互联网技术越来越受欢迎。网络计算机的生活方式逐渐受到广大人民群众的喜爱&#xff0c;也逐渐进入了每个用户的使用。互联网具有便利性&#xff0c;速度快&#xff0c;效率高&#xff0c;成本低等优点。 因此&#xff0c;构建符合自己要…

Git Bash命令初始化本地仓库,提交到远程仓库

git init&#xff1a;初始化空仓库 // 初始化一个空仓库或者重新初始化一个存在的仓库 git init git remote // 为当前本地仓库添加一个远程仓库地址 git remote add origin https://gitee.com/xxx/demo.git git pull // 从设置好链接的远程仓库拉去已经存在的数据&#xff0c;…

疯狂送树莓派Pico!与CODESYS和上海晶珩一起,探索慕尼黑上海电子展!

3月20日-3月22日 上海新国际博览中心 E2馆 2200展 上海晶珩 X CODESYS 与您相约慕尼黑上海电子展 上海晶珩&#xff08;EDATEC&#xff09;荣幸宣布&#xff0c;将与全球自动化软件领导者CODESYS公司共同参展2024慕尼黑上海电子生产设备展&#xff01; 届时&#xff0c;我…

【数据结构】二叉树的相关操作以及OJ题目

文章目录 1. 二叉树2.二叉树的遍历2.1前序遍历2.2中序遍历2.3后序遍历2.4层序遍历 3.树的节点个数4.树的高度5.叶子节点的个数6.第k层节点的个数7.查找x所在的节点8.树的销毁9.相关题目9.1相同的树9.2单值二叉树9.3对称二叉树9.4二叉树的构建9.5翻转二叉树9.6另一颗树的子树 10…

Learn OpenGL 17 立方体贴图

立方体贴图 我们已经使用2D纹理很长时间了&#xff0c;但除此之外仍有更多的纹理类型等着我们探索。在本节中&#xff0c;我们将讨论的是将多个纹理组合起来映射到一张纹理上的一种纹理类型&#xff1a;立方体贴图(Cube Map)。 简单来说&#xff0c;立方体贴图就是一个包含了…

Java基础夯实——八股文【2024面试题案例代码】

1、Java当中的基本数据类型 Java中常见的数据类型及其对应的字节长度和取值范围如下&#xff1a; byte&#xff1a;1字节&#xff0c;取值范围为-128到127。short&#xff1a;2字节&#xff0c;取值范围为-32,768到32,767。int&#xff1a;4字节&#xff0c;取值范围为-2,147…

【Greenhills】GHS-MULTI IDE-Ubuntu纯命令系统部署license文件

【更多软件使用问题请点击亿道电子官方网站查询】 1、 文档目标 记录在Ubuntu纯命令系统中部署license文件的步骤。 2、 问题场景 客户服务器为Linux纯命令行的环境&#xff0c;客户也无其他服务器可以部署&#xff0c;需在纯命令行上尝试安装。 3、软硬件环境 1&#xff09…

【Linux系统编程】进程程序替换

介绍&#xff1a; 进程程序替换是指将一个进程中正在运行的程序替换为另一个全新的程序的过程&#xff0c;但替换不是创建新进程&#xff0c;只是将对应程序的代码和数据进行替换。具体来说&#xff0c;这个替换过程涉及将磁盘中的新程序加载到内存结构中&#xff0c;并重新建立…

鸿蒙Harmony应用开发—ArkTS声明式开发(容器组件:FlowItem)

瀑布流组件的子组件&#xff0c;用来展示瀑布流具体item。 说明&#xff1a; 该组件从API Version 9开始支持。后续版本如有新增内容&#xff0c;则采用上角标单独标记该内容的起始版本。仅支持作为Waterflow组件的子组件使用。 子组件 支持单个子组件。 接口 FlowItem() 使…

【RK android6.0 实现假关机真开机效果】

RK android6.0 实现假关机真开机效果 需求描述解决方法 郑重声明:本人原创博文&#xff0c;都是实战&#xff0c;均经过实际项目验证出货的 转载请标明出处:攻城狮2015 Platform: Rockchip CPU:rk3368 OS:Android 7.1.2 Kernel: 3.10 需求描述 由于硬件设计&#xff0c;使用错误…

Qt实现简单的五子棋程序

Qt五子棋小程序 Qt五子棋演示及源码链接登陆界面单机模式联机模式联网模式参考 Qt五子棋 参考大佬中国象棋程序&#xff0c;使用Qt实现了一个简单的五子棋小程序&#xff0c;包含了单机、联机以及联网三种模式&#xff1b;单机模式下实现了简易的AI&#xff1b;联机模式为PtoP…

Verilog case/casez/casex的区别

casez/casex语句虽然EDA工具也可以综合出来&#xff0c;但是注意&#xff0c;casez/casex综合出来的电路和case语句综合出来的电路可能是不同的&#xff0c;一定要慎用。而且综合工具也会告诉你casez/casex中的“?”"x""z"的comparison is always false&a…

提速增效!Figma插件推荐,助你事半功倍!

随着设计工具的更换&#xff0c;设计师不再局限于传统软件的重复操作&#xff0c;而是越来越追求能够提高设计效率的插件。从Photoshop到Sketch&#xff0c;再到最受欢迎的Figma&#xff0c;插件层出不穷。Figma是一种基于浏览器和团队合作的设计工具&#xff0c;可以在任何平台…

HackTheBox Blackfield

[1] 靶机信息状态退役难度HardIP/地址https://app.hackthebox.com/machines/Blackfield价格需要订阅 14$ /20 $ /月 端口扫描 └──╼ #nmap -p- --min-rate1000 -T4 10.129.229.17 Starting Nmap 7.93 ( https://nmap.org ) at 2024-03-14 14:14 GMT Nmap scan report for…