力扣 第258题 各位相加

Deepface实战避坑:人脸识别模型VGG-Face、Facenet、ArcFace怎么选?附各模型性能与速度实测对比 本文深入对比了DeepFace框架中VGG-Face、Facenet和ArcFace三种主流人脸识别模型的性能与适用场景,提供了详细的实测数据和选型建议。通过分析各模型在CPU/GPU环境下的推理速度、内存占用和准确率表现,帮助开发者根据实际需求(如门禁系统、相册分类或视频流分析)选择最优模型,并给出工程化部署的避坑指南和优化技巧。 阅读详情

题目

给定一个非负整数 num,反复将各个位上的数字相加,直到结果为一位数。

示例:

输入: 38
输出: 2
解释: 各位相加的过程为:3 + 8 = 11, 1 + 1 = 2。 由于 2 是一位数,所以返回 2。
进阶:
你可以不使用循环或者递归,且在 O(1) 时间复杂度内解决这个问题吗?

来源:力扣(LeetCode)
链接:https://leetcode-cn.com/problems/add-digits
著作权归领扣网络所有。商业转载请联系官方授权,非商业转载请注明出处。

暴力版答案

循环求得各个位数的和
当求的和大于10,那么,重新计算各个位数的和,直到和小于10为止
    //暴力版
    //循环求得各个位数的和
    //当求的和大于10,那么,重新计算各个位数的和,直到和小于10为止
    public static int addDigits(int num) {
        //如果num小于10,返回num
        if (num < 10) {
            return num;
        }
        int sum = 0;
        for (; num >= 10; ) {
            //将num的个位数赋值给i
            int i = num % 10;
            //num除以10的值 赋值给num
            num = num / 10;
            //累计求个位数的和
            sum += i;
            if (num < 10) {
                //如果num小于10,则sum加上num,(与最高位数相加的和)
                sum += num;
                if (sum >= 10) {
                    //如果sum大于10,则赋值为num,且sum赋值为0
                    num = sum;
                    sum = 0;
                }
            }
        }
        return sum;
    }

进阶版答案

进阶版,不用循环和递归
原理:最后结果只有一位数,那么必然返回的是1~9
所以,num如果能够被9整除,那么返回结果就为9
如果不能被9整除,返回结果就是num%9的余数
    //进阶版,不用循环和递归
    //原理:最后结果只有一位数,那么必然返回的是1~9
    //所以,num如果能够被9整除,那么返回结果就为9
    //如果不能被9整除,返回结果就是num%9的余数
    public static int addDigits2(int num) {
        //如果num小于10,返回num
        if (num < 10) {
            return num;
        }
        int sum = num % 9;
        if (sum == 0) {
            return 9;
        }
        return sum;
    }

测试代码结果正确并可提交

在这里插入图片描述

国产FPGA逆袭!深度评测复旦微RFVU3P5G核心板在相控阵雷达中的表现 本文深度评测了复旦微RFVU3P5G核心板在相控阵雷达中的实战表现。该核心板凭借射频直采架构、高采样率ADC/DAC及丰富的DSP资源,在多通道同步精度、动态范围及系统稳定性等关键指标上表现出色,展现了国产FPGA在高端雷达应用中的硬核实力与供应链自主价值。 阅读详情

相关推荐

Vmware Vcenter7.0证书web续期发生错误

生成证书,选择第三个(PS,如果没有域名的,一定要写IP,不然很容易卡在85%,服务不能起来)这里大概率可能是证书里面的FQDN和主机不匹配,又或者是主机解析FQDN有问题。vCenter _MACHINE_CERT快到期了,通过web界面更新证书失败。vSphere Client 版本 7.0.2.00200。登陆ssh到vcenter,重新生成证书。先关掉HA,不然证书管理会报错。第一步先这样,重新续订一下证书。

m0_74823595的博客 3943

力扣 258. 各位相加

题库 给定一个非负整数 num,反复将各个位上的数字相加,直到结果为一位数。 示例 输入: 38 输出: 2 解释: 各位相加的过程为:3 + 8 = 11, 1 + 1 = 2。 由于 2 是一位数,所以返回 2。 来源:力扣(LeetCode) 链接:https://leetcode-cn.com/problems/add-digits 著作权归领扣网络所有。商业转载请联系官方授权,非商业转载请注明出处。 想法 ?暂定 实现 方法1:python 暴力法 class Solution: def

(ง •_•)ง没有困难的工作,只有勇敢的狗狗 173

第一天(点亮led灯+led灯闪烁)——Arduino uno R3 学习之旅

发光二极管(Light Emitting Diode,简称LED)是一种能够将电能转化为光能的固态的半导体器件。长脚为阳极短脚为阴极电流必须从长脚流入从短脚流出方可点亮LED##杜邦线杜邦线:是导线中的一种,杜邦线端部有两种接头形式:带针的一种称为公头,带孔的一种称为母头,如下图所示:说明:与电源相连接时,一般采用红色杜邦线,与地连接时采用黑色杜邦线。

qwsbcjendb的博客 1128

力扣(LeetCode)258. 各位相加(2022.09.15)

给定一个非负整数 num,反复将各个位上的数字相加,直到结果为一位数。链接:https://leetcode.cn/problems/add-digits。进阶:你可以不使用循环或者递归,在 O(1) 时间复杂度内解决这个问题吗?由于 2 是一位数,所以返回 2。来源:力扣(LeetCode)输入: num = 38。输入: num = 0。

ChaoYue_miku的博客 527

Unity XR Interaction Toolkit(二)手柄交互

XR Interaction 手柄事件和抓取设置

qq_36608844的博客 8494

USB-Type-C PCB布局布线设计规范

USB Type-C连接器有24个引脚。图1和图2分别显示了USB Type-C插座和插头的插针。母头/母座公头/插头可以很明显看出,插口内的Pin功能相对于中心对称。公头插入母头,无论正反插,引脚功能都完美契合。而且电源VBUS/GND都拥有4个Pin,最大支持5A电流,在保证高速数据传输的同时也提高了电流承载能力。表 1 和表 2 分别汇总了在 USB Type-C 型插座和插头上所使用的信号列表。

weixin_63005522的博客 8271

力扣刷题记录——258. 各位相加、263.丑数、268.丢失的数字

​ 本专栏主要记录力扣的刷题记录,备战蓝桥杯,供复盘和优化算法使用,也希望给大家带来帮助,博主是算法小白,希望各位大佬不要见笑,今天要分享的是——《258. 各位相加、263.丑数、268.丢失的数字》。 ​

weixin_63866037的博客 730

RT-Thread与ROS2通信:micro-ROS在STM32上的移植实践

本文详细介绍了在STM32平台上使用RT-Thread实时操作系统移植micro-ROS实现与ROS2通信的实践方案。通过对比rosserial方案,重点阐述了micro-ROS基于XRCE-DDS协议栈在数据可靠性(丢包率低于1%)、双模式通信(UDP/串口)以及C/C++混合编程方面的优势,为嵌入式设备与ROS2的高效通信提供了完整解决方案。

emacs5lisp的博客 326

【力扣】258. 各位相加

题目:给定一个非负整数 num,反复将各个位上的数字相加,直到结果为一位数。 示例: 输入: 38 输出: 2 解释: 各位相加的过程为:3 + 8 = 11, 1 + 1 = 2。 由于 2 是一位数,所以返回 2。 进阶: 你可以不使用循环或者递归,且在 O(1) 时间复杂度内解决这个问题吗? class Solution { public int addDigits(int num)...

漆黑梦工厂 569

基于RK3588的高效音视频对讲系统设计与实现

本文详细介绍了基于RK3588芯片的高效音视频对讲系统设计与实现。文章深入剖析了RK3588在8K编解码、高性能音频DSP及丰富接口方面的优势,并提供了从开发环境搭建、分层软件架构设计,到视频采集编码、音频回声消除及低延迟网络传输的完整实战指南,旨在帮助开发者充分利用该芯片硬件能力,构建稳定、低延迟的实时通信系统。

dapp9builder的博客 254

基于学术研究风云卫星数据下载教程

目录 一、相关网址 1.登录注册网址:国家卫星气象中心 2.风云数据服务客户端下载网址 3.风云卫星遥感数据服务网址 二、下载数据步骤 1.首先在注册登录网址,注册一个账户 2.待账户审核后,登录账户即可搜索并下载数据 三、相关工具下载 1.登录风云卫星遥感数据服务网址 2.NCSA HDFView软件 3.风云卫星数据(L1)处理软件包(FENGYUN Toolkit v1.1) 4.静止卫星云图分区图显示软件(SECView) 5.风云二号静止气象卫星数据及产品处理..

珞瑜的博客 1万+

LeetCode第258题_各位相加

LeetCode第258题要求将一个非负整数反复进行各位相加,直到结果为一位数。文章提供了两种解法:一是直观的模拟法,通过循环计算数字各位之和;二是高效的数学方法,利用数字根公式(num-1)%9+1实现O(1)时间复杂度。代码示例展示了C#、Python和C++的实现,性能对比表明数学方法更优。文章还分析了常见错误、解法优劣以及相关题目,帮助读者全面理解该问题。 (字数:148)

qq_40263592的博客 1192

AI辅助需求分析与提示词生成

文章标题 《AI辅助需求分析与提示词生成》 关键词 人工智能 需求分析 提示词生成 深度学习 机器学习 强化学习 数学模型 系统架构

AI天才研究院 1211

leetcode刷题之258.各位相加

leetcode刷题之258.各位相加 题目: 给定一个非负整数 num,反复将各个位上的数字相加,直到结果为一位数。 示例 : 输入: 38 输出: 2 解释: 各位相加的过程为:3 + 8 = 11, 1 + 1 = 2。 由于 2 是一位数,所以返回 2。 进阶: 你可以不使用循环或者递归,且在 O(1) 时间复杂度内解决这个问题吗? 代码1: class Solutio...

胡萝卜 270

Camera2Demo

在Camera2 的基础上进行封装,使得Camera2一堆初始化逻辑与Activity分离,降低耦合度,完成预览拍照并保存的操作

win10 跳过U8环境检测的IE WebControls.rar

win10 安装u8的时候 提示IE WebControls 不通过,这个工具可以欺骗u8的检查。 跳过U8环境检测的IE WebControls。提示导入失败后,重新检测通过。

【LeetCode】第258题——各位相加(难度:简单)

【LeetCode】第258题——各位相加(难度:简单)题目描述解题思路代码详解注意点 题目描述 给定一个非负整数 num,反复将各个位上的数字相加,直到结果为一位数。 示例: 输入: 38 输出: 2 解释: 各位相加的过程为:3 + 8 = 11, 1 + 1 = 2。 由于 2 是一位数,所以返回 2。 进阶: 你可以不使用循环或者递归,且在 O(1) 时间复杂度内解决这个问题吗? 来源:力扣(LeetCode) 链接:https://leetcode-cn.com/problems/add-di

Se7en_Dayz的博客 390

OV9734 DATASHEET,完整规格书

OV9734完整规格书,包括电气参数,尺寸规格,寄存器配置表等

【力扣刷题】258.各位相加

当 i=0 时,10 ^i-1=0 是 9 的倍数;由于当 num>0 时,num−1≥0,非负数除以 9 的余数一定也是非负数,因此计算 num−1 除以 9 的余数然后加 1 的结果是正确的。(2)对于取模的语言,结果的正负和右操作数相同,则 num−1 对 9 取模的结果为 8,加 1 后得到结果 9,无法得到正确的结果,此时需要对 num=0 的情况专门做处理。(1)对于取余的语言,结果的正负和左操作数相同,则 num−1 对 9 取余的结果为 −1,加 1 后得到结果 0,可以得到正确的结果;

m0_67763367的博客 1485

廖雪峰Python教程[完整版]

廖雪峰的python教程整理的,已经排好版了,而且还是完整的,适合小白

JavaScript写LeetCode258题——各位相加

JavaScript写LeetCode258题——各位相加 题目 第一种思路 循环解决 代码如下图: 结果如下图: 第二种思路 寻找规律 所有的能被9整除的正整数各个位之和都为9。 所有的不能被9整除的正整数各个位之和是该数和9的余数。 代码如下图: 结果如下图: ...

越界的博客 255

[leetcode] 各位相加

leetcode 各位相加 给定一个非负整数 num,反复将各个位上的数字相加,直到结果为一位数。

热红豆不加糖 184

LeetCode第 258 题:各位相加(C++)

258. 各位相加 - 力扣(LeetCode) 如果使用循环: class Solution { public: int addDigits(int num) { int sum = num; while(num >= 10){ sum = 0; while(num){ int p = num % 10; num = num / 10;

zj 359

LeetCode—第258题—各位相加—Java解法

首先自己想出来的递归解法如下,原理是把各位相加这个过程看成一个递归,每次把最末尾的数相加就行了。比如123 各位相加原本应该是 1 + 2 + 3 = 6,但是我的思路是把它看成 12 + 3 = 15 = 1 + 5 = 6,结果是一样的class Solution { public int addDigits(int num) { if (num / 10 == 0) { return num; } num = num .

weixin_44038672的博客 216

LeetCode:258. 各位相加

258. 各位相加 给定一个非负整数 num,反复将各个位上的数字相加,直到结果为一位数。 示例: 输入: 38 输出: 2 解释: 各位相加的过程为:3 + 8 = 11, 1 + 1 = 2。 由于2 是一位数,所以返回 2。 进阶: 你可以不使用循环或者递归,且在 O(1) 时间复杂度内解决这个问题吗? 来源:力扣(LeetCode) 链接:https://leetcode-cn.com/problems/add-digits 著作权归领扣网络所有。商业转载请联系官方授权,非商业转载请注...

梦~' 184

LeetCode刷题NO.258——各位相加

来源:力扣(LeetCode) 链接:https://leetcode-cn.com/problems/add-digits/ 【题目描述】 给定一个非负整数 num,反复将各个位上的数字相加,直到结果为一位数。返回这个结果。 【示例】 示例 1: 输入: num = 38 输出: 2 解释: 各位相加的过程为: 38 --> 3 + 8 --> 11 11 --> 1 + 1 --> 2 由于 2 是一位数,所以返回 2。 示例 2: 输入: num = 0 输出: 0 提示

流牧的博客 6394

力扣入门题:第258题 - 各位数相加

这道题是力扣的简单题,主要考察对数字操作和数学规律的理解。循环法直观易懂,数学法则更加高效。在实际面试中,可以先给出循环解法,再优化到数学解法,展示思维深度。

qq_51357689的博客 241

​LeetCode刷题实战258:各位相加

算法的重要性,我就不多说了吧,想去大厂,就必须要经过基础知识和业务逻辑面试+算法面试。所以,为了提高大家的算法能力,这个公众号后续每天带大家做一道算法题,题目就从LeetCode上面选 !...

程序IT圈 154

LeetCode题练习与总结:各位相加--258

本文介绍了求解非负整数数字根的算法,通过数学公式直接计算,避免了循环相加,实现了O(1)的时间复杂度和空间复杂度,简洁高效。

一直学习永不止步 1767

python leetcode刷题 (42):258. 各位相加

题目描述: 给定一个非负整数 num,反复将各个位上的数字相加,直到结果为一位数。 示例: 输入: 38 输出: 2 解释: 各位相加的过程为:3 + 8 = 11, 1 + 1 = 2。 由于 2 是一位数,所以返回 2。 进阶: 你可以不使用循环或者递归,且在 O(1) 时间复杂度内解决这个问题吗? 解题过程: 递归 class Solution: def addDigits(self...

weixin_42785446的博客 299
上一篇: scala基础内容 函数式编程与基础函数,匿名函数,递归练习
下一篇: 力扣 第415题 字符串相加 与 第67题 二进制求和
默默谦行
博客等级 码龄7年 5粉丝 29原创
评论
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

个

红包个数最小为10个

元

红包金额最低5元

当前余额3.43元 前往充值 >
需支付:10.00元
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付元
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值