每日一题力扣258

 

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

正解:

class Solution:
    def addDigits(self, num: int) -> int:
        def pending_num(num):
            sum = 0
            while num:
                sum += num % 10#取最后一位数出来
                num //= 10#留下除了最后一位数的其余数字
            return sum
        while num >= 10:#只要不是1位数,就反复递归
            num = pending_num(num)
        return num

 

posted @ 2021-03-10 17:28  小千北同学超爱写代码  阅读(33)  评论(0编辑  收藏  举报