LeetCode—66. Plus One

Type:easy


class Solution {

public:

  vector<int> plusOne(vector<int>& digits) {

        int n = digits.size();

        int i;

        if(digits[n-1] != 9){

            digits[n-1] += 1;

            return digits;

        }else{

            for(i=n-1; i>=0; --i){

                if(digits[i] == 9) digits[i] = 0;

                else break;

            }

            if(i != -1){

                digits[i] += 1;

                return digits;

            }else{

                vector<int> ret(n+1, 0);

                for(int j=1; j<n+1; j++) ret[j] = digits[j-1];

                ret[0] = 1;

                return ret;

            }

        }

        return digits;

    }

};

©著作权归作者所有,转载或内容合作请联系作者
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

推荐阅读更多精彩内容