首页 > 其他分享 >258-各位相加-归根到底是数学

258-各位相加-归根到底是数学

时间:2023-11-10 19:44:56浏览次数:25  
标签:归根到底 -- 相加 int 258 num 一位数

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

 

示例 1:

输入: num =38
输出: 2 
解释: 各位相加的过程为38 --> 3 + 8 --> 11
11 --> 1 + 1 --> 2
由于 2 是一位数,所以返回 2。

class Solution(object):
    def addDigits(self, num):
        """
        :type num: int
        :rtype: int
        """
        if len(str(num)) == 1:  
            return num
        else:
            l = list(str(num)) 
            s = 0
            for i in range(len(l)):
                s+= int(l[i]) 
            return self.addDigits(s)  

 

用数学:

 

标签:归根到底,--,相加,int,258,num,一位数
From: https://www.cnblogs.com/LYoungH/p/17824893.html

相关文章

  • 2586
    给你一个下标从 0 开始的字符串数组 words 和两个整数:left 和 right 。如果字符串以元音字母开头并以元音字母结尾,那么该字符串就是一个 元音字符串 ,其中元音字母是 'a'、'e'、'i'、'o'、'u' 。返回 words[i] 是元音字符串的数目,其中 i 在闭区间 [left,right]......
  • 两数相加
       题目理解:这题目的意思是传入这个方法里的是,两个逆序的链表,而题目给出的示例,只是输入的值,则运算的方法里返回值也是逆序的就好。Definitionforsingly-linkedlist. structListNode{   intval;   ListNode*next;   ListNode():val(0),......
  • T392582 我有抑郁症【题解】
    题目描述要求有多少个序列满足:令\(v=1\simn\)从\(v\)号点开始,走到\(p_v\),…,最后走回\(v\)记录每个点被走到的次数(起点算,终点不算,反正只算一次)\(i\)号点走到的次数恰好是\(i\)答案对\(998,244,353\)取模Solution首先,一个点有一个出边,这个图为什么一定可以走回......
  • LeetCode每日算法2—两数相加
    题目描述给出两个非空的链表用来表示两个非负的整数。其中,它们各自的位数是按照逆序的方式存储的,并且它们的每个节点只能存储一位数字。如果,我们将这两个数相加起来,则会返回一个新的链表来表示它们的和。您可以假设除了数字0之外,这两个数都不会以0开头。示例输入:(2......
  • python---数列内元素正倒相加实例
    a=list([1,21,5,3,1,23])b=list([7,4,6,3,2,1])x=int(input("请输入想从第几个数开始:"))y=int(input("请输入想到第几个数结束:"))c=[0,0,0,0,0,0]m=input("想要正着加吗?(T/F)")foriinrange(x-1,y):ifm=="T":c=a[i]+b[i]......
  • 面试必刷TOP101:11、链表相加(二)
    一、题目二、题解反转链表:publicListNodeaddInList(ListNodehead1,ListNodehead2){//进行判空处理if(head1==null)returnhead2;if(head2==null){returnhead1;}//反转h1链表head1......
  • LeetCode 454.四数相加 II
    题目描述给你四个整数数组nums1、nums2、nums3和nums4,数组长度都是n,请你计算有多少个元组(i,j,k,l)能满足:0<=i,j,k,l<nnums1[i]+nums2[j]+nums3[k]+nums4[l]==0描述第一次提交的代码importjava.util.Map;importjava.util.HashMap;classSol......
  • T125847 【模板】动态开点线段树
    \(T125847\)题目背景注意:请注意时间限制是800ms请使用较快的输入输出注意:空间限制是128MB请不要开longlong时限在std的2.5倍以上题目描述有一个有\(1000000000\)个数的初始值全为\(0\)的区间,你要进行两种操作:将某区间每一个数加上 \(x\)求出某区间每一个数的和输入格式第一行包......
  • #yyds干货盘点# LeetCode程序员面试金典:四数相加 II
    1.简述:给你四个整数数组 nums1、nums2、nums3 和 nums4 ,数组长度都是 n ,请你计算有多少个元组 (i,j,k,l) 能满足:0<=i,j,k,l<nnums1[i]+nums2[j]+nums3[k]+nums4[l]==0 示例1:输入:nums1=[1,2],nums2=[-2,-1],nums3=[-1,2],nums4=[0,2]输出:2......
  • 题解 [ABC258G] Triangle
    题目链接\(\rmO(n^3)\)枚举\(i,j,k\)的算法是显然的。考虑优化掉一个\(n\),如果枚举\(i,j\),那么显然需要找出有多少个\(k\)同时满足\(a_{i,k}=a_{j,k}=1\),我们可以将\(a_i\)和\(a_j\)看作两个二进制数,那么同时等于\(1\)的位置就是并起来等于\(1\)的位置,\(bitset......