leetcode738. 单调递增的数字
生活随笔
收集整理的這篇文章主要介紹了
leetcode738. 单调递增的数字
小編覺得挺不錯(cuò)的,現(xiàn)在分享給大家,幫大家做個(gè)參考.
一:芭比Q了 又掉一個(gè)粉 啊嗚嗚嗚嗚嗚
如果作為一個(gè)領(lǐng)導(dǎo)者來說,首先就是要以身作則,自己都做不到 ,那就沒什么威信去要求手下人按照要求去做
二:題目
三:上碼
class Solution { public:int monotoneIncreasingDigits(int n) {/**思路:1.這里我們將這個(gè)數(shù)字轉(zhuǎn)換成字符串的做法,可以方便我們統(tǒng)計(jì)單個(gè)字符(每個(gè)字符代表一個(gè)數(shù)字 加減均可)(字符a的話也是代表一個(gè)數(shù)字97均可自增自減)2.舉例98我們需要找到單調(diào)遞增的最大數(shù)的話,那么我們可以如何選擇呢? str[i-1] > str[i]的話,那么str[i-1]--, 同時(shí)str[i] = 9,即是我們的893.那么如果我們從前往后遍歷的話,我們就會(huì)遇到332這種特殊情況,我們從332--->329,那么32就不滿足遞增的的情況了。4.所以我們采用從往前的遍歷方式 332-->329-->299 */string str = to_string(n);//轉(zhuǎn)化為字符串int flag = 0;for(int i = str.size() -1; i > 0; i--) {if(str[i-1] > str[i]) {flag = i;//這里記錄我們從哪開始是9str[i-1]--;}} for(int i = flag; i < str.size() && flag != 0; i++) {str[i] = '9';}return stoi(str);//將字符串轉(zhuǎn)化為數(shù)字} };總結(jié)
以上是生活随笔為你收集整理的leetcode738. 单调递增的数字的全部內(nèi)容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: 关于插值的相关理解
- 下一篇: leetcode714.买卖股票的