这题按题意做即可,我用一个flag=1代表需要进位。时间上超过了99.69%的提交。
class Solution(object):
def plusOne(self, digits):
"""
:type digits: List[int]
:rtype: List[int]
"""
digits.reverse()
i=0
flag=1#进位为1
while i<len(digits):
if digits[i]+flag==10:
digits[i]=0
flag=1
else:
digits[i]+=flag
flag=0
i+=1
if flag==1:
digits.append(1)
digits.reverse()
return digits