Plus One

题目链接https://leetcode.com/problems/plus-one/

 

这是digit这类题里最简单的一道了,这类题基本都不难,但是需要把几个boundary case考虑到,这道题里需要考虑的是进位之后首位的情况。其他case以后遇到再提。

 

class Solution {
public:
    vector<int> plusOne(vector<int>& digits) {
        int carry = 1;
        vector<int> result;
        for(int i = digits.size() - 1; i >= 0; i--) {
            int cur = digits[i] + carry;
            result.push_back(cur % 10);
            carry = cur / 10;
        }
        if(carry > 0)
            result.push_back(carry);
        reverse(result.begin(), result.end());
        return result;
    }
};

 

posted on 2015-04-16 01:55  小虎是枪王  阅读(113)  评论(0编辑  收藏  举报