思路:
向前遍历,前一项大于后一项,前一项就减1,后面所有都变成9
比如332:其实就是遍历一下这个过程
332
329
299
代码如下:
class Solution {
public:
int monotoneIncreasingDigits(int N) {
string num=to_string(N);
int len=num.size();
for(int i=len-1;i>=0;i--){
if(num[i-1]>num[i]){
int j=i;
while(j<len) num[j++]='9';
num[i-1]--;
}
}
return stoi(num);
}
};