leetcode 66 Plus One

python:

class Solution:
    def plusOne(self, digits):
        """
        :type digits: List[int]
        :rtype: List[int]
        """
        res = []
        t = 1
        for i in digits[::-1]:
            i = i + t 
            if i >= 10:
                res.append(i-10)
                t = 1
            else:
                res.append(i)
                t = 0
        if t == 1:
            res.append(t)
        return res[::-1]

c++:

class Solution {
public:
    vector<int> plusOne(vector<int>& digits) {
        auto digit = digits.rbegin();
        while(*digit == 9){
            *digit = 0;
            if(++digit == digits.rend()){
                digits.insert(digits.begin(), 1);
                return digits;
            }            
        }
        ++*digit;
        return digits;
    }
};

猜你喜欢

转载自blog.csdn.net/MRxjh/article/details/80923870