首页 > 其他分享 >leedocde-各位相加

leedocde-各位相加

时间:2024-03-25 13:55:23浏览次数:13  
标签:10 各位 mylist int 相加 num leedocde

三个简单函数:

class Solution:
    def addDigits(self, num: int) -> int:
        # 如果数字已经是个位数,则直接返回
        if num <= 9:
            return num
        
        # 持续执行直到数字变成个位数为止
        while True:
            # 将数字转换为其各个数字构成的列表
            cur_list = self.intLis(num)
            
            # 求各个数字的总和
            cur_num = self.addImp(cur_list)
            
            # 如果总和是个位数,则返回该数字
            if cur_num <= 9:
                return cur_num
            else:
                # 如果不是个位数,则更新数字为总和并重复过程
                num = cur_num
    
    # 辅助函数,对列表中的数字求和
    def addImp(self, mylist):
        total_sum = 0
        for i in mylist:
            total_sum += i
        return total_sum
    
    # 辅助函数,将整数转换为其各个数字构成的列表
    def intLis(self, num):
        mylist = list()
        while num > 0:
            mylist.append(num % 10)
            num = num // 10
        return mylist

 

标签:10,各位,mylist,int,相加,num,leedocde
From: https://www.cnblogs.com/yyyjw/p/18094226

相关文章

  • 【每周例题】力扣 c++ 各位相加
    各位相加题目各位相加 题目解析这个题目看似需要使用递归方法或者使用while循环进行求解,其实你只需要统计前三十个数就可以发现规律:  根据图表可知,除了数字0,其他数字各位相加的最后结果都是其数字对9取模。所以从这个结果可以得到以下代码代码#include<iostream>u......
  • 两数相加详细解说
    Definitionforsingly-linkedlist.publicclassListNode{intval;ListNodenext;ListNode(){}ListNode(intval){this.val=val;}ListNode(intval,ListNodenext){this.val=val;this.next=next;}}*/classSolution{publicListNodead......
  • 415. 字符串相加c
    voidreverse(char*num1,intn){inthead=0,tail=n-1;while(head<=tail){charc=num1[head];num1[head]=num1[tail];num1[tail]=c;head++;tail--;}}intmax(inti,intj){if(i>j)returni;......
  • Java 编程实例:相加数字、计算单词数、字符串反转、元素求和、矩形面积及奇偶判断
    Java如何相加两个数字相加两个数字示例intx=5;inty=6;intsum=x+y;System.out.println(sum);//打印x+y的和输出11解释首先,声明两个int类型的变量x和y,并分别赋值为5和6。然后,使用+运算符将x和y相加,并将结果赋给变量sum。最后,使用Sy......
  • 【JavaScript编程实操10】1.实现一个函数,要求传递2个参数,返回两个参数的和 2.创建一个
    前言1、实现一个函数,要求传递2个参数,返回两个参数的和代码:实现效果:2、创建一个函数,传递两个参数,返回两个参数的相乘和相加的和代码:实现效果:总结前言    本次继续针对Javascript阶段的函数与对象相关方面的实操练习,共有2个实操,这两个实操具有相似性,只是一个......
  • 第454题.四数相加II
    第454题.四数相加II力扣题目链接(opensnewwindow)给定四个包含整数的数组列表 A,B,C,D,计算有多少个元组(i,j,k,l) ,使得 A[i]+B[j]+C[k]+D[l]=0。为了使问题简单化,所有的A,B,C,D具有相同的长度 N,且0≤N≤500。所有整数的范围在-2^28......
  • leetcode 2.两数相加 ,链表
    2.两数相加给你两个 非空 的链表,表示两个非负的整数。它们每位数字都是按照 逆序 的方式存储的,并且每个节点只能存储 一位 数字。请你将两个数相加,并以相同形式返回一个表示和的链表。你可以假设除了数字0之外,这两个数都不会以0 开头。 示例1:输入:l1=[2,4......
  • 数据结构算法系列----高精度加法(大数相加)、处理前导零
    目录一、为什么要使用高精度加法二、处理前导零1、为什么要处理前导零2、处理前导零的代码三、处理大数相加四、完整代码即例题一、为什么要使用高精度加法  当处理远大于longlong数据范围的数时,通常会将这些大数表示为字符串,然后通过字符串的方式进行加减乘除......
  • 代码随想录算法训练营第七天 | 454.四数相加II 383. 赎金信 15. 三数之和 18. 四数之
    day7记录代码随想录第一题力扣454.四数相加II 给定四个包含整数的数组列表 A,B,C,D,计算有多少个元组(i,j,k,l) ,使得 A[i]+B[j]+C[k]+D[l]=0。为了使问题简单化,所有的A,B,C,D具有相同的长度 N,且0≤N≤500。所有整数的范围在-2^28到......
  • 代码随想录算法训练营第七天| 454. 四数相加 II 383. 赎金信
    454.四数相加IIhttps://leetcode.cn/problems/4sum-ii/description/、publicintfourSumCount(int[]nums1,int[]nums2,int[]nums3,int[]nums4){intres=0;HashMap<Integer,Integer>map=newHashMap<>();for(inti:nu......