一:芭比Q了 又掉一个粉 啊呜呜呜呜呜
如果作为一个领导者来说,首先就是要以身作则,自己都做不到 ,那就没什么威信去要求手下人按照要求去做
二:题目
三:上码
class Solution {
public:
int monotoneIncreasingDigits(int n) {
/**
思路:1.这里我们将这个数字转换成字符串的做法,可以方便我们统计单个字符
(每个字符代表一个数字 加减均可)(字符a的话也是代表一个数字97均可自增自减)
2.举例98我们需要找到单调递增的最大数的话,那么我们可以如何选择呢? str[i-1] > str[i]
的话,那么str[i-1]--, 同时str[i] = 9,即是我们的89
3.那么如果我们从前往后遍历的话,我们就会遇到332这种特殊情况,我们从332--->329,那么32就不满足递增的
的情况了。
4.所以我们采用从往前的遍历方式 332-->329-->299
*/
string str = to_string(n);//转化为字符串
int flag = 0;
for(int i = str.size() -1; i > 0; i--) {
if(str[i-1] > str[i]) {
flag = i;//这里记录我们从哪开始是9
str[i-1]--;
}
}
for(int i = flag; i < str.size() && flag != 0; i++) {
str[i] = '9';
}
return stoi(str);//将字符串转化为数字
}
};