4/09/2014

Leetcode -- Plus One

class Solution {  
 public:  
   vector<int> plusOne(vector<int> &digits) {  
     int sum = digits[digits.size() - 1] + 1;  
     int res = sum % 10;  
     int carry = sum / 10;  
     digits[digits.size() - 1] = res;  
     for(int i = digits.size() - 2; i >=0; i--) {  
       int sum = digits[i] + carry;  
       int res = sum % 10;  
       carry = sum / 10;  
       digits[i] = res;  
     }  
     if(carry) {  
       digits.insert(digits.begin(), carry);  
     }  
     return digits;  
   }  
 };  

No comments: