738. 单调递增的数字

class Solution {
public:
    int monotoneIncreasingDigits(int N) 
    {
        string strNum = to_string(N);
        // flag用来标记赋值9从哪里开始

        int flag = strNum.size();
        for (int i = strNum.size() - 1; i > 0; i--) 
        {
            if (strNum[i - 1] > strNum[i] ) 
            {
                flag = i;
                strNum[i - 1]--;
            }
        }
        for (int i = flag; i < strNum.size(); i++) 
        {
            strNum[i] = '9';
        }
        return stoi(strNum);
    }
};

猜你喜欢

转载自blog.csdn.net/qq_41078889/article/details/111209176