作者:syt
思路:按位相加,注意进位
*/
#include <iostream> #include <vector> using namespace std; class AddOne{ public: /** * @param digits a number represented as an array of digits * @return the result */ vector<int> plusOne(vector<int>& digits) { // Write your code here bool is = false; int i = digits.size() - 1; digits[i]++; while (i >= 0) { if (is) { digits[i]++; is = false; } if (digits[i] == 10) { if (i == 0) { digits[i] = 1; digits.push_back(0); } else digits[i] = 0; is = true; i--; } else break; } return digits; } };