Given a number represented as an array of digits, plus one to the number.
The digits are stored such that the most significant digit is at the head of the list.
1 class Solution { 2 public: 3 vector<int> plusOne(vector<int> &digits) { 4 int carry = 1; 5 for(int i = digits.size()-1; i >= 0 && carry; i--) { 6 int sum = carry + digits[i]; 7 carry = sum / 10; 8 digits[i] = sum % 10; 9 } 10 if(carry == 1) { 11 digits.insert(digits.begin(), 1); 12 } 13 return digits; 14 } 15 };