[LeetCode]Plus One-2014.01.19
Posted on 2014-01-19 02:36 Uriel 閱讀(149) 評論(0) 編輯 收藏 引用 所屬分類: LeetCode用vector<int>表示的一個(gè)數(shù),求加1后的數(shù),弱化版高精度加法。。=,=
1 class Solution {
2 public:
3 vector<int> plusOne(vector<int> &digits) {
4 reverse(digits.begin(), digits.end());
5 int n = digits.size();
6 int tp = 1;
7 for(int i = 0; i < n; ++i) {
8 digits[i] += tp;
9 if(digits[i] == 10) {
10 digits[i] = 0;
11 tp = 1;
12 }
13 else {
14 tp = 0;
15 break;
16 }
17 }
18 if(tp) digits.push_back(tp);
19 reverse(digits.begin(), digits.end());
20 return digits;
21 }
22 };
2 public:
3 vector<int> plusOne(vector<int> &digits) {
4 reverse(digits.begin(), digits.end());
5 int n = digits.size();
6 int tp = 1;
7 for(int i = 0; i < n; ++i) {
8 digits[i] += tp;
9 if(digits[i] == 10) {
10 digits[i] = 0;
11 tp = 1;
12 }
13 else {
14 tp = 0;
15 break;
16 }
17 }
18 if(tp) digits.push_back(tp);
19 reverse(digits.begin(), digits.end());
20 return digits;
21 }
22 };