第六十九天:力扣738题,单调递增的数字
地址:leetcode-cn.com/problems/mo…
思路:从后往前遍历,后一位比前一位小的,就全部变成9;
function monotoneIncreasingDigits(N: number): number {
const arr:Array<string> = N.toString().split('');
let res:Array<number> = new Array<number>();
res.unshift(parseInt(arr[arr.length - 1]));
for(let i:number = arr.length - 1; i > 0; i--)
{
if(res[0] < parseInt(arr[i - 1]))
{
res.fill(9);
res.unshift(parseInt(arr[i - 1]) - 1);
}
else{
res.unshift(parseInt(arr[i - 1]));
}
}
return parseInt(res.join(''));
};
执行用时:88 ms, 在所有 TypeScript 提交中击败了100.00%的用户
内存消耗:39.8 MB, 在所有 TypeScript 提交中击败了100.00%的用户