分析
从最后一位开始+1后%10,若得到的值不为0,则说明不需要进位了,直接返回。若到第一位还是需要进位,则首位需要再向前+1。(9999)->(10000)
class Solution {
public:
vector<int> plusOne(vector<int>& digits) {
int n=digits.size();
for(int i=n-1;i>=0;i--){
digits[i]=(digits[i]+1)%10;
if(digits[i]!=0){
return digits;
}
}
digits =vector<int>(n+1);
digits[0]=1;
return digits;
}
};