deno.land / x / masx200_leetcode_test@10.6.5 / steps-to-make-array-non-decreasing / index.ts

نووسراو ببینە
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
export default function totalSteps(nums: number[]): number { let ans = 0;
const n = nums.length; //单调递减栈 const stk = Array<[number, number]>(); stk.push([nums[n - 1], 0]); //从后往前遍历 for (let i = n - 2; i >= 0; i--) { let count = 0; while (stk.length && nums[i] > stk[stk.length - 1][0]) { //count取最大值 count = Math.max(count + 1, stk[stk.length - 1][1]); stk.pop(); } //count取最大值 ans = Math.max(ans, count); stk.push([nums[i], count]); } return ans;}
masx200_leetcode_test

Version Info

Tagged at
a year ago