class Solution {
public:
vector<int> plusOne(vector<int> &digits) {
// Start typing your C/C++ solution below
// DO NOT write int main() function
int carry = 1;
for (int i = digits.size() - 1; i >= 0; i--) {
int sum = digits[i] + carry;
digits[i] = sum % 10;
carry = sum / 10;
}
if (carry) {
vector<int> ret(digits.size() + 1);
for (int i = digits.size() - 1; i >= 0; i--)
ret[i + 1] = digits[i];
ret[0] = carry;
return ret;
} else {
return digits;
}
}
};
Small Case: 8ms
Large Case: 16ms
Time: O(n)
Space: O(n)