LeetCode之 66. Plus One python

  • Post author:
  • Post category:python


给定一个

非负整数

组成的

非空

数组,在该数的基础上加一,返回一个新的数组。

最高位数字存放在数组的首位, 数组中每个元素只存储一个数字。

你可以假设除了整数 0 之外,这个整数不会以零开头。


示例 1:

输入: [1,2,3]
输出: [1,2,4]
解释: 输入数组表示数字 123。


示例 2:

输入: [4,3,2,1]
输出: [4,3,2,2]
解释: 输入数组表示数字 4321。

class Solution(object):
    def plusOne(self, digits):
        """
        :type digits: List[int]
        :rtype: List[int]
        """
        t=digits[-1]
        t+=1
        i=len(digits)-1
        if len(digits)==1 and digits[0]==9:
            return [1,0]
        if t<=9:
            digits[-1]=t
            return digits
        else :
            while i>0:
                digits[i]= t%10
                t=int(digits[i-1])+1
                print digits,i
                if i-1 == 0 and t>9:
                    digits[i-1]=t%10
                    digits.insert(0,1)
                    return digits
                elif t <= 9:
                    digits[i-1]=t
                    return digits
                else :
                    i-=1
                    continue



版权声明:本文为weixin_40748006原创文章,遵循 CC 4.0 BY-SA 版权协议,转载请附上原文出处链接和本声明。