闯关leetcode——202. Happy Number

ops/2024/11/15 5:45:42/

大纲

  • 题目
    • 地址
    • 内容
  • 解题
    • 代码地址

题目

地址

https://leetcode.com/problems/happy-number/description/

内容

Write an algorithm to determine if a number n 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.
  • 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.

Return true if n is a happy number, and false if not.

Example 1:

Input: n = 19
Output: true
Explanation:
12 + 92 = 82
82 + 22 = 68
62 + 82 = 100
12 + 02 + 02 = 1

Example 2:

Input: n = 2
Output: false

Constraints:

  • 1 <= n <= 231 - 1

解题

这题要求Happy Number。它符合一种规律:迭代计算10进制数字每位平方的和,最终得到数字1。如果不是Happy Numer,那么计算过程中一定会出现某种循环。这样我们可以通过set结构来做校验。

#include <set>
using namespace std;class Solution {
public:bool isHappy(int n) {set<int> s;while (n != 1) {if (s.find(n) != s.end()) {return false;}s.insert(n);int sum = 0;for (int c = n % 10; n != 0; n /= 10, c = n % 10) {sum += c * c;}n = sum;}return true;}
};

在这里插入图片描述

代码地址

https://github.com/f304646673/leetcode/tree/main/202-Happy-Number/cplusplus


http://www.ppmy.cn/ops/133110.html

相关文章

零信任沙盒能为源代码保密带来哪些升级

在当今竞争激烈的商业环境中&#xff0c;源代码的安全保护对于任何依赖技术创新的公司来说都是至关重要的。SDC沙箱&#xff08;Secret Data Cage&#xff09;以其独特的十大特性&#xff0c;为源代码的安全提供了前所未有的保护。以下是SDC沙箱如何为源代码加密带来革命性效果…

SpringBoot(五)SpringBoot三层架构

博客项目的基本配置完成了。接下来我们要做的就是编写正式的功能了。先明确一下,我的博客前端是使用VUE3框架来编写,后端的SpringBoot框架只作为接口来使用。 接下来我们就进入到实现对应功能的阶段了,在这之前,我们先来回顾一下SpringBoot的三层架构的原理。 一:SpringBo…

运维故障与排查技巧

1.网络不通 问题&#xff1a;无法访问网络资源。 解决方法&#xff1a;检查物理线路&#xff0c;交换机端口&#xff0c;网卡驱动和配置&#xff0c;使用ping&#xff0c;traceroute等工具定位问题。 2.网络速度慢 问题&#xff1a;访问网络资源较慢。 解决方法&#xff1…

#渗透测试#SRC漏洞挖掘#CSRF漏洞的防御

免责声明 本教程仅为合法的教学目的而准备&#xff0c;严禁用于任何形式的违法犯罪活动及其他商业行为&#xff0c;在使用本教程前&#xff0c;您应确保该行为符合当地的法律法规&#xff0c;继续阅读即表示您需自行承担所有操作的后果&#xff0c;如有异议&#xff0c;请立即停…

支付宝与华为终端联手,移动支付即将进入“碰时代”

大家好&#xff0c;我是小悟。 支付宝与华为终端强强联手&#xff0c;达成了战略合作&#xff01;这可不仅仅是个简单的合作哦&#xff0c;它预示着我们的移动支付方式即将迎来一场革命性的变革&#xff0c;正式进入“碰时代”&#xff01; 支付宝&#xff0c;作为全球领先的…

C++11新特性(二)

目录 一、C11的{} 1.初始化列表 2.initializer_list 二、可变参数模版 1.语法与原理 2.包扩展 3.empalce接口 三、新的类功能 四、lambda 1.语法 2.捕捉列表 3.原理 五、句装器 1.function 2.bind 一、C11的{} 1.初始化列表 C11以后想统⼀初始化⽅式&#xff0…

Unity中IK动画与布偶死亡动画切换的实现

在Unity游戏开发中&#xff0c;Inverse Kinematics&#xff08;IK&#xff09;是创建逼真角色动画的强大工具。同时&#xff0c;能够在适当的时候切换到布偶物理状态来实现死亡动画等效果&#xff0c;可以极大地增强游戏的视觉体验。本文将详细介绍如何在Unity中利用IK实现常规…

Freemarker模板 jar!/BOOT-INF/classes!/**.html

需求&#xff1a;发送邮件&#xff0c;邮件内容通过Freemaker模板生成&#xff0c;如下代码&#xff1a; Configuration configuration new Configuration(Configuration.getVersion()); configuration.setDefaultEncoding("utf-8"); /** 加载模板目录 **/ //这个方…