代码随想录:单调递增的数字

class Solution {
public:
//尽量给后面的数字赋为9,即可保证单增
//每次将数字减少成最大的小于输入的数字
    int monotoneIncreasingDigits(int n) {
        string str = to_string(n);
        int flag;
        for(int i = str.length()-2;i>=0;i--){
            if(str[i]>str[i+1]){
                str[i] = str[i]-1;
                flag = i;
            }
        }
        for(int i =flag+1;i<str.length();i++){
            str[i]='9';
        }
        return stoi(str);
    }
};
posted @ 2025-02-06 16:28  huigugu  阅读(5)  评论(0编辑  收藏  举报