示例代码

class Solution {
public:
    int monotoneIncreasingDigits(int n) {
        string str=to_string(n);
        int len=str.length(),flag=-1;
        for(int i=len-1;i>0;i--){
            if(str[i-1]>str[i]){
                //flag用于记录从什么位置开始和其之后的所有数字都为9
                flag=i;
                str[i-1]--;
            }
        }
        if(flag!=-1){
            for(int i=flag;i<len;i++){
                // str[i-1]=9; //错误写法
                str[i]='9';
            }
        }
        return stoi(str);

    }
};

效果展示

LeetCode---738. 单调递增的数字(str[i-1]=9;//错误写法 str[i]=‘9‘;//正确写法)_算法