思路:
从后向前遍历就好, 如果最后还有个进位就在向量首加个1即可.
vector<int> plusOne(vector<int>& digits) {
int carry = 0;
for (int i = digits.size() - 1; i >= 0; i--) {
int res = digits[i] + carry;
if (i == digits.size() - 1) res++;
digits[i] = res % 10;
carry = res / 10;
if (! carry) break;
}
if (carry)
digits.insert(digits.begin(), 1);
return digits;
}