66. Plus One
class Solution {
public:
vector<int> plusOne(vector<int>& digits) {
int n=digits.size();
int carry=0;
if(digits[n-1]+1==10){
digits[n-1]=0;
carry++;
for(int i=n-2;i>=0;i--){
int num=digits[i]+carry;
carry=0;
if(num==10){
digits[i]=0;
carry=carry+1;
}
else
digits[i]=num;
}
if(carry==1){
digits.push_back(carry);
int i=0;
int num1=digits.size();
int temp=digits[i];
digits[i]=digits[num1-1];
digits[num1-1]=temp;
}
}
else{
digits[n-1]=digits[n-1]+1;
}
return digits;
}
};
Comments
Post a Comment