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

2023-11-10 13:52
文章标签 相加 python3 258 力扣题

本文主要是介绍【Python3】【力扣题】258. 各位相加,希望对大家解决编程问题提供一定的参考价值,需要的开发者们随着小编来一起学习吧!

【力扣题】题目描述:

【Python3】代码:

1、解题思路:将整数转为字符串,遍历字符串中的数字,求和。

知识点:str(...):转为字符串。为了遍历每个数字。

               int(...):转为整数。为了数字求和。

               sum(...):求和。

class Solution:def addDigits(self, num: int) -> int:while num >= 10:num = sum(int(x) for x in str(num))return num

2、解题思路:从右到左依次获取低位的数字,求和。

class Solution:def addDigits(self, num: int) -> int:while num >= 10:            # ① 若不是一位数即>=10,各位数相加,若相加后的值仍不是一位数,继续将值的各位数相加res = 0while num:res += num % 10     # 除法取余数,获取低位数字,求和num //= 10          # 除法取整数num = res               # ① return num

3、解题思路:数学。

同余原理:

一个正整数m,两个整数a和b,若(a-b)能被m整除(即(a-b)/m是整数),则a和b对模m同余,记作a≡b(mod m)。

简单理解:两个整数除以同一个正整数,余数相同,则两整数同余。

例如:整数11和1,模10。11%10=1,1%10=1,则11和1同余。或者 (11-1)/10=1(整数),则11和1同余。

数根:又称数字根,每个正整数都有一个数根。

正整数,各位数相加,若值大于10,再各位数相加,最终得到一位数,即数根。

注解:n%10 结果为0-9,但10的整数倍的数根不符合。例如:10%10=0,但10的数根为1,不符合。

           n%9+1 结果为1-9,但9的整数倍的数根不符合。例如:9%9+1=1,但9的数根为9,不符合。 

          (n-1)%9+1 结果为1-9,符合,但仅限于大于0的整数。若为0,(0-1)%9+1=9,但0的数根为0。因此,n=0,结果为0;n>0,结果(n-1)%9+1。

class Solution:def addDigits(self, num: int) -> int:return (num - 1) % 9 + 1 if num else 0# 或者if num == 0: return 0if num % 9 == 0: return 9return num % 9

这篇关于【Python3】【力扣题】258. 各位相加的文章就介绍到这儿,希望我们推荐的文章对编程师们有所帮助!



http://www.chinasem.cn/article/383059

相关文章

Python3 BeautifulSoup爬虫 POJ自动提交

POJ 提交代码采用Base64加密方式 import http.cookiejarimport loggingimport urllib.parseimport urllib.requestimport base64from bs4 import BeautifulSoupfrom submitcode import SubmitCodeclass SubmitPoj():de

javaScript日期相加减例子

当前时间加上2天 var d = new Date(“2015-7-31”); d.setDate(d.getDate()+2); var addTwo=d.getFullYear()+”年”+(d.getMonth()+1)+”月”+d.getDate()+”日”; “控制台输出===============”+”当前日期加2天:”+addTwo; 使用这种方法,月份也会给你计算.

两个长数字相加

1.编程题目 题目:要实现两个百位长的数字直接相加 分析:因为数字太长所以无法直接相加,所以采用按位相加,然后组装的方式。(注意进位) 2.编程实现 package com.sino.daily.code_2019_6_29;import org.apache.commons.lang3.StringUtils;/*** create by 2019-06-29 19:03** @autho

Python安装:Mac 使用brew 安装Python2 和 Python3

安装python ## python2brew install python ## python3brew install python3 出现错误 Error: An unexpected error occurred during the `brew link` stepThe formula built, but is not symlinked into /usr/loc

Python: #!/usr/bin/python3 #!/usr/bin/env python3

只能放在第一行,第二行就没有效果了。 1. 路径不同 #!/usr/bin/python3&& #!/usr/bin/env python3写在脚本语言第一行的目的是 想要以什么可执行程序去运行这个文件中的代码。 #!/usr/bin/python3是告诉操作系统执行这个脚本的时候,调用/usr/bin下的python3解释器; #!/usr/bin/env python3这种用法是为了

Linux搭建Python3、Django环境

开发十年,就只剩下这套架构体系了! >>>    好久没写了,朋友们,我又回来了。 安装Python3 Python全部版本下载地址:         https://www.python.org/ftp/ 解决RedHat,使用Python3退格出现乱码问题:         yum -y install readline-devel.x86_64 下载Python3:

ubuntu 安装python3 教程

本篇教程,主要介绍如何在Ubuntu上安装python3教程。 1、查看是否有python 在安装前,首先看看自己系统上,是否存在python环境,可能有些系统,默认就安装过python,如果已经有python了,可以直接跳过安装教程。 2、安装步骤 apt update && apt install -y python3 python3-pip

Leetcode面试经典150题-2.两数相加

解法都在代码里,不懂就留言或者私信 理论上提交这个就是最优解 字节考过不下20次,这个高居字节面试榜第9名 /*** Definition for singly-linked list.* public class ListNode {* int val;* ListNode next;* ListNode() {}* ListNode(int val) {

【python requests警告】python3.x requests库取消ssl验证,InsecureRequestWarning: Unverified HTTPS request is be

警告信息: InsecureRequestWarning: Unverified HTTPS request is being made. Adding certificate verification is strongly advised. See: https://urllib3.readthedocs.io/en/latest/advanced-usage.html#ssl-warni

设置python4delphi支持python3.X

看不懂也要跟踪下,哪哪出问题了,嗯,是python的Py_Initialize()出问题,这行代码   Py_Initialize             := Import('Py_Initialize'); 咋办呢,万能的互联网啊(哪天不能上网,那是不是也活的差不多了) 网上说,一般出这个问题,是python的路径出问题了,系统环境变量里找不着python了,哦,是这样,但是我不能设置p