标签:
The digits are stored such that the most significant digit is at the head of the list.
Solution 1 : 十进制加法
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; i --) 6 { 7 int sum = digits[i]+carry; 8 carry = sum / 10; 9 digits[i] = sum % 10; 10 if(carry == 0) 11 break; 12 } 13 if(carry == 1) 14 digits.insert(digits.begin(), 1); 15 return digits; 16 } 17 };
Solution 2 :
1 class Solution { 2 public: 3 vector<int> plusOne(vector<int> &digits) { 4 for(int i = digits.size()-1; i >= 0; i --) 5 { 6 if(digits[i] <= 8){ 7 digits[i] += 1; 8 return digits; 9 }else{//9 10 if(i != 0) 11 digits[i] = 0; 12 else 13 { 14 digits[0] = 1; 15 digits.push_back(0); 16 return digits; 17 } 18 } 19 } 20 } 21 };
标签:
原文地址:http://www.cnblogs.com/irun/p/4709507.html