class Solution {
public:
vector<int> plusOne(vector<int> &digits) {
int last=digits.size()-1;
//lowest digit
int carry=(1+digits[last])/10;
digits[last]=(1+digits[last])%10;
//other digits
if(last>=1)
{
for(int i=last-1;i>=0;i--)
{
int tmp=digits[i];
digits[i]=(carry+digits[i])%10;
carry=(carry+tmp)/10;
}
}
if(carry)
{
vector<int>::iterator it;
it = digits.begin();
digits.insert(it,carry);
}
return digits;
}
};
Plus One
最新推荐文章于 2021-05-14 00:39:03 发布